国产PHP开发框架myqee新手快速入门教程

Tags: php

一.环境.

笔者的环境是win7 32bit 旗舰版.用的xampp1.7.4(1.8.x版的php版本太高,个人觉得php 5.3X更实用些)+mq最新版.重点是配置虚拟机,
参考了#

本机xampp安装在D盘,给出我的配置:虚拟机配置文件路径 D:\xampp\apache\conf\extra\httpd-vhosts


#mq
<VirtualHost *:80>
 DocumentRoot "D:/xampp/htdocs/mq/"
 ServerName mq
 <Directory "D:/xampp/htdocs/mq/">
  Options Indexes FollowSymLinks Includes ExecCGI
  AllowOverride All
  Order allow,deny
  Allow from all
 </Directory>
</VirtualHost>
<VirtualHost *:80>
DocumentRoot "D:/xampp/htdocs/"
ServerName localhost
</VirtualHost>

host配置文件位置
C:\Windows\System32\drivers\etc\hosts.ics
本机没有找到 hosts ,改hosts.ics也是可以的.

二.新建一个myqee项目

1.下载最新 版myqee,github 你懂的.
解压到D:/xampp/htdocs/mq文件夹下(与虚拟机配置一致).
修改config.new.php  为config.php 
还有需要一个.htacess ,我用github 下载下来的一直不行,需要用官方文档写的那个.内容如下


RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [PT,L]

copy一份到wwwroot目录下.
a.新建 一个项目,打开根目录的config.php,新增一个s项目,
配置如下(放在默认配置之前)


's' => array
    (
        'name' => '默认项目', //名称
        'dir' => 's', //目录
        'isuse' => true, //是否启用
        'url' => '/',
 ),

 b.projects下面新建 目录s ,为了方便,直接复制defautl并重命名.
在s目录下controllers中新建 一个最简单的控制器 helloworld.controller.php
内容如下


<?php
class Controller_HelloWorld extends Controller
{
    /**
     * 测试
     */
    public function action_default()
    {
         echo 'helloworld';
    }
}

打开浏览器,输入mq/index.php/helloworld,看到hellowold,成功.
在开发环境中,建议开启myqee的debug功能,在php.ini加入

;[MyQEE]
myqee.debug=On

配合firefox +firebug使用.

三.显示数据库中的内容.

hello world太简单了,以至于在实际开发中没有什么意义,趁热打铁.来点干货,从数据库读取数据,并显示在对应的视图中.
a.新建config.php放在s 根目录下并写入对应的数据库配置.内容如下:


<?php
/**database config*/
$config['database']['default'] = array
(
  'type' => 'MySQL',
  'connection' => array
  (
    'hostname' => '127.0.0.1',
    'database' => 'mq',
    'username' => 'mq',
    'password' => '123456', 'persistent' => false,
  ),
     
  'table_prefix' => '',
  'charset' => 'utf8',
  'caching' => false,
  'profiling' => true,
);

这里我在mysql中建立了一个mq库 ,并建了一张表wh_list
wh_list的ddl如下,(内容自己添加).


CREATE TABLE `wh_list` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(32) COLLATE utf8_unicode_ci DEFAULT NULL,
  PRIMARY KEY (`id`),
  UNIQUE KEY `username` (`username`) USING BTREE
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

b.model整起.
在s目录下新建models目录,并新建 一个wh.model.php内容如下:


<?php
class Model_Wh extends Model
{
 static function get_list()
 {
  $db = Database::instance();
  $sql = 'select * FROM wh_list';
  $arr = $db->query($sql)->as_array();
  return $arr;
 }
}

修改下上面的helloworld控制器.内容修改如下:


<?php
class Controller_HelloWorld extends Controller
{
    /**
     * 测试
     */
    public function action_default()
    {
     $view = new View('wh');
     $arr = Model_Wh::get_list();
     $view->set('wh', $arr);
     $view->render();
    }
}

别激动,如果在浏览刷刚才的mq/index.php/helloworld,肯定会报错的,视图没有.
在views,新建 wh.view.php
内容如下:


<?php foreach($wh as $w){?>
  <?php echo $w['name'] ?>
<?php }?>

刷新下,就能看到wh_list 表的`name`列内容了.
呵呵,是不是很有成就感.
新手入门的教程先写到这里,声明下,这个只是给新手快速入门感受框架之用.

本文链接:http://www.4byte.cn/learning/25984.html