开启命名空间
默认yaf没有开启该功能,需要在php.ini
中添加:
yaf.use_namespace=1
use_namespace默认没有开启,在开启的情况下, Yaf将会使用命名空间方式注册自己的类, 比如Yaf_Application
将会变成Yaf\Application
生成基础框架代码
使用yaf_cg工具生成基础框架代码
cd YAF_PATH/tools/cg/
./yaf_cg web output/web n
说明:
第一个参数web
代表项目的名称,第二个参数output/web
代表代码生成的目录,第三个参数n
表示使用命名空间
生成后,将output目录下的web文件夹拷贝至网站目录就可以访问了。
修改视图文件后缀
打开conf/application.ini
文件,在最后添加:
application.view.ext = php
原本默认的后缀是phtml,但使用phpsotrm在里面写php代码时,没有提示。改成php后对于phpstorm之类的编辑器更友好。
更多配置项参考:http://www.laruence.com/manual/yaf.config.optional.html
调整目录结构
一般入口文件index.php
放在public
目录,这样在创建网站时,直接将网站根目录指向到public
文件夹就可以了,这样更安全。
1.在项目根目录新建public
文件夹,与application
,conf
位于同一级目录。
2.把index.php
和.htaccess
这两个文件移动到public
文件夹中。
3.将application
文件夹重命名为app
,这样更简短。
4.将conf/application.ini
文件重命名为app.ini
修改后的目录结构如下图所示:
修改public/index.php
,将内容改成如下的代码:
<?php
define('ENVIRONMENT', 'develop'); //生成环境请修改为product
define('WEB_PATH', dirname(__FILE__));
define('ROOT_PATH', WEB_PATH.'/../');
define('CONF_PATH', ROOT_PATH . 'conf/app.ini');
switch (ENVIRONMENT) {
case 'develop':
error_reporting(E_ERROR);
ini_set('display_errors', 1);
ini_set('yaf.environ', 'develop');
break;
case 'product':
ini_set('display_errors', 0);
break;
default:
header('HTTP/1.1 503 Service Unavailable.', TRUE, 503);
echo 'The application environment is not set correctly.';
exit(1); // EXIT_ERROR
}
$app = new Yaf\Application( CONF_PATH);
$app->bootstrap()->run();
?>
修改conf/app.ini
文件,内容如下:
[common]
application.directory = ROOT_PATH "/app"
application.dispatcher.catchException = TRUE
;视图模板扩展名
application.view.ext = php
[product : common]
注意:视图模板扩展名默认是phtml,改成php后,需要将app/views
目录下的模板文件后缀都改成php
现在输入域名/public就可以访问了