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

2015-01-24信息快讯网

这篇文章主要介绍了国产PHP开发框架myqee新手快速入门教程,myqee中文名称迈启PHP框架,有比较多的高级开发特性,需要的朋友可以参考下

一.环境.

笔者的环境是win7 32bit 旗舰版.用的xampp1.7.4(1.8.x版的php版本太高,个人觉得php 5.3X更实用些)+mq最新版.重点是配置虚拟机,
参考了http://www.jb51.net/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`列内容了.
呵呵,是不是很有成就感.
新手入门的教程先写到这里,声明下,这个只是给新手快速入门感受框架之用.

Yii实现MySQL多数据库和读写分离实例分析
PHP多线程类及用法实例
php提取字符串中网站url地址的方法
thinkphp常见路径用法分析
ThinkPHP中关联查询实例
ThinkPHP实现支付宝接口功能实例
THINKPHP项目开发中的日志记录实例分析
PHP中mysql_field_type()函数用法
PHP移动文件指针ftell()、fseek()、rewind()函数总结
微信公众号开发之微信公共平台消息回复类实例
推荐一款MAC OS X 下php集成开发环境mamp
php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
PHP操作MySQL事务实例
PHP通过插入mysql数据来实现多机互锁实例
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
3款值得推荐的微信开发开源框架
PHP中使用sleep函数实现定时任务实例分享
PHP中使用sleep造成mysql读取失败的案例和解决方法
兼容ie6浏览器的php下载文件代码分享
PHP开发框架kohana3 自定义路由设置示例
PHP缓存机制Output Control详解
PHP生成指定长度随机数最简洁的方法
PHP下通过QRCode类库创建中间带网站LOGO的二维码
PHP实现获取图片颜色值的方法
php+mysql不用递归实现的无限级分类实例(非递归)
微信公众平台天气预报功能开发
编译PHP报错configure error Cannot find libmysqlclient under usr的解决方法
PHP执行Curl时报错提示CURL ERROR: Recv failure: Connection reset by peer的解决方法
Thinkphp实现MySQL读写分离操作示例
PHP获取MySql新增记录ID值的3种方法
ThinkPHP结合ajax、Mysql实现的客户端通信功能代码示例
destoon二次开发常用数据库操作
destoon二次开发模板及调用语法汇总
destoon二次开发入门示例
PHP读取RSS(Feed)简单实例
©2014-2024 dbsqp.com