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

所属分类: 网络编程 / PHP编程 阅读数: 1232
收藏 0 赞 0 分享

一.环境.

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

更多精彩内容其他人还在看

php实现的美国50个州选择列表实例

这篇文章主要介绍了php实现的美国50个州选择列表实例,可实现让当前州为选中状态的功能,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用递归生成文章树

写递归函数,可考虑缓存,定义一些静态变量来存上一次运行的结果,多程序运行效率很有帮助.大概步骤如下:首先到数据库取数据,放到一个数组,然后把数据转化为一个树型状的数组,最后把这个树型状的数组转为html代码。下面我们来看个实例
收藏 0 赞 0 分享

wordpress安装过程中遇到中文乱码的处理方法

这篇文章主要介绍了wordpress安装过程中遇到中文乱码的处理方法,是个人项目中遇到的一个奇葩事件,经过一番研究,终于解决,这里记录下来分享给大家,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

php的crc32函数使用时需要注意的问题(不然就是坑)

这篇文章主要介绍了php的crc32函数使用时需要注意的问题(不然就是坑) ,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP中把对象转换为关联数组代码分享

这篇文章主要介绍了PHP中把对象转换为关联数组代码分享,本文直接给出实现代码,需要的朋友可以参考下
收藏 0 赞 0 分享

php检测url是否存在的方法

这篇文章主要介绍了php检测url是否存在的方法,涉及php中get_headers及正则匹配的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

php获取twitter最新消息的方法

这篇文章主要介绍了php获取twitter最新消息的方法,涉及php操作curl及正则替换的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

php遍历CSV类实例

这篇文章主要介绍了php遍历CSV类,实例分析了php针对csv文件的打开、读取及遍历的技巧,非常具有实用价值,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP使用mysqldump命令导出数据库

最近用php写一个数据备份的功能。做法是使用php的system函数执行mysqldump命令,进行备份,这里分享给大家,有需要的小伙伴可以参考下。
收藏 0 赞 0 分享

PHP用反撇号执行外部命令

shell_exec() 命令行实际上仅是反撇号 ` 操作符的变体,如果您编写过 shell 或 Perl 脚本,您就知道可以在反撇号操作符内部捕捉其他命令的输出。
收藏 0 赞 0 分享
查看更多