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

  一.环境.

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

  参考了http://www.glzy8.com/article/52123.htm

  本机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`列内容了.

  呵呵,是不是很有成就感.

  新手入门的教程先写到这里,声明下,这个只是给新手快速入门感受框架之用.