Yaf 是一个MVC框架,可惜它对M的支持甚弱,只支持自动加载模型(现在好像是吧),不像其它框架yii、laravel等,支持ORM以及各种方便的查询方法。
但我们总有方法。
本文章的例子将涉及:
- 将yii整合到Yaf框架中,使得Yaf中可以使用yii的类
- 编写配置文件配置数据库连接参数
- 获取配置文件信息,构造数据库连接对象(
yii\db\Connection
) - 编写一个正则路由协议(
Yaf_Route_Regex
) - 输出JSON格式的响应(用到
Yaf_Response_Http
对象)
我们先来看一下完成后的应用目录结构,如下图:
与之前不同的是,配置文件目录conf放在了application目录下。
一、引入yii
- Step1: 下载yii2,链接在这里http://www.yiichina.com/download。我用的是基本模板,当然高级的也没关系。
- Step2: 把下载后的文件解压后复制到application/vendor/yii目录下
- Step3: 在application/vendor/yii下创建一个yii_bootstrap.php,后面我们会在Yaf中引入这个文件,把yii整合进来:
文件内容如下:
<?php
defined('YII_DEBUG') or define('YII_DEBUG', true);
defined('YII_ENV') or define('YII_ENV', 'dev');
require(__DIR__ . '/vendor/autoload.php');
require(__DIR__ . '/vendor/yiisoft/yii2/Yii.php');
用过yii的朋友后会发现,这其实是yii入口文件 web/index.php的前几行。