Yaf安装
win下面直接下载'.dll'的类库,这里分两个版本。
先通过编写一个文本通过phpinfo()来看php是什么版本,
thread safety:enabled ,选择TS版本的dell,
thread safety:disabled选择NTS版本的dell。
下载地址为:http://pecl.php.net/package/yaf。
扩展yaf.dll安装在你安装环境的php目录下的ext目录下。
然后在运行环境中的php.ini文件中加上extension=php_yaf.dll,重新启动服务。
在phpinfo页面中搜索yaf,查看是否成功。
用php目录中的php.exe 运行 yaf_cg文件来创建应用,
示例:D:\wamp\bin\php\php5.5.12\php.exe D:\wamp\www\yaf-master\tools\cg\yaf_cg 生成应用的名称,
然后在yaf-master\tools\cg\output\生成的项目名复制到网站目录下。
在php.ini文件Module Settings下加入以下内容:
[yaf]
yaf.environ = "develop"
yaf.library = "D:\wamp\www\Demo\application\library\"
yaf.cache_config = 0
yaf.name_suffix = 1
yaf.name_separator = ""
yaf.forward_limit = 5
yaf.use_namespace = 0
yaf.use_spl_autoload = 1
以上详细说明看手册,地址为:http://www.laruence.com/manual/yaf.ini.html。
要使用命名空间,所有的yaf_换成yaf\,
使用develop要在application.ini中加上[develop : common]
所有的配置在:应用的名称\conf\application.ini中定义。
参数定义的格式为:application.参数的名称的格式。
所有配置参数的得到: $config = Yaf\Application::app()->getConfig();,
其中一个参数的得到:$config->application->设定参数的名称。
不使用全局库:在应用的名称\conf\application.ini中添加application.library = "文件的路径"。
外部库文件的载入:yaf\Loader::import('文件路径'),文件路径为相对路径默认在:应用项目名\application\library\找文件,第一个斜杠之前默认为命名空间的名称,不是文件的名称。
yaf.lowcase_path设置为1时,开启后文件默认加载路径为小写。
模块设置:在应用的名称\conf\application.ini中添加application.modules = '模块的名称,模块名称',默认的模块是Index,默认的Index模块一定要放在最后。
要在应用项目的名称\application下建立modules文件,对应的模块文件,对应的控制器文件。
浏览器访问控制器的路径为:网站域名/index.php/模块名称/控制器/方法,默认的模块是Index。
数据的接收:在控制器中,$this->getRequest()->getQuery()接收通过get方式提交的数据,
$this->getRequest()->getPost(),接收通过post方式提交的数据,
this->getRequest()->getFile()接收通过post提交文件的数据,
this->getRequest()->getParams()接收通过路由规则方式传递的数据。
this->getRequest()->getParams()接收post,get方式提交的数据。
this->getRequest()->isGet()判断是否通过get方式提交的。
this->getRequest()->isPost()判断是否通过post方式提交的。
this->getRequest()->setRedirect()重定向。
this->getRequest()->setBody('内容')会在页面显示你设置的内容,方法末尾是return false,
在用this->getRequest()->response()会出现两次setBody中设置的内容。
可通过return false来解决这个问题,用die()或者exit()会中断yaf框架的执行。
也可以在boostrapt.php中的_initResponse()方法中加入$dispatcher->getInstance()->returnResponse(true)来解决。
禁用视图:在控制器中的最后加上return false,
或者在Boostrap.php文件中的__initView()方法中加入$dispatcher->getInstance()->disableView();
控制器中的一些方法:
$this->getView()->assign('名称','值');分配变量给视图
$this->getView()->render('文件路径');不写绝对则相对与views的文件的路径,也可传入绝对路径。这个参数可以用来做静态页。
设置视图的路径:可以在控制器中加入init()方法,在方法中加入$this->getView()->setScriptPath('文件路径')。
先通过编写一个文本通过phpinfo()来看php是什么版本,
thread safety:enabled ,选择TS版本的dell,
thread safety:disabled选择NTS版本的dell。
下载地址为:http://pecl.php.net/package/yaf。
扩展yaf.dll安装在你安装环境的php目录下的ext目录下。
然后在运行环境中的php.ini文件中加上extension=php_yaf.dll,重新启动服务。
在phpinfo页面中搜索yaf,查看是否成功。
用php目录中的php.exe 运行 yaf_cg文件来创建应用,
示例:D:\wamp\bin\php\php5.5.12\php.exe D:\wamp\www\yaf-master\tools\cg\yaf_cg 生成应用的名称,
然后在yaf-master\tools\cg\output\生成的项目名复制到网站目录下。
在php.ini文件Module Settings下加入以下内容:
[yaf]
yaf.environ = "develop"
yaf.library = "D:\wamp\www\Demo\application\library\"
yaf.cache_config = 0
yaf.name_suffix = 1
yaf.name_separator = ""
yaf.forward_limit = 5
yaf.use_namespace = 0
yaf.use_spl_autoload = 1
以上详细说明看手册,地址为:http://www.laruence.com/manual/yaf.ini.html。
要使用命名空间,所有的yaf_换成yaf\,
使用develop要在application.ini中加上[develop : common]
所有的配置在:应用的名称\conf\application.ini中定义。
参数定义的格式为:application.参数的名称的格式。
所有配置参数的得到: $config = Yaf\Application::app()->getConfig();,
其中一个参数的得到:$config->application->设定参数的名称。
不使用全局库:在应用的名称\conf\application.ini中添加application.library = "文件的路径"。
外部库文件的载入:yaf\Loader::import('文件路径'),文件路径为相对路径默认在:应用项目名\application\library\找文件,第一个斜杠之前默认为命名空间的名称,不是文件的名称。
yaf.lowcase_path设置为1时,开启后文件默认加载路径为小写。
模块设置:在应用的名称\conf\application.ini中添加application.modules = '模块的名称,模块名称',默认的模块是Index,默认的Index模块一定要放在最后。
要在应用项目的名称\application下建立modules文件,对应的模块文件,对应的控制器文件。
浏览器访问控制器的路径为:网站域名/index.php/模块名称/控制器/方法,默认的模块是Index。
数据的接收:在控制器中,$this->getRequest()->getQuery()接收通过get方式提交的数据,
$this->getRequest()->getPost(),接收通过post方式提交的数据,
this->getRequest()->getFile()接收通过post提交文件的数据,
this->getRequest()->getParams()接收通过路由规则方式传递的数据。
this->getRequest()->getParams()接收post,get方式提交的数据。
this->getRequest()->isGet()判断是否通过get方式提交的。
this->getRequest()->isPost()判断是否通过post方式提交的。
this->getRequest()->setRedirect()重定向。
this->getRequest()->setBody('内容')会在页面显示你设置的内容,方法末尾是return false,
在用this->getRequest()->response()会出现两次setBody中设置的内容。
可通过return false来解决这个问题,用die()或者exit()会中断yaf框架的执行。
也可以在boostrapt.php中的_initResponse()方法中加入$dispatcher->getInstance()->returnResponse(true)来解决。
禁用视图:在控制器中的最后加上return false,
或者在Boostrap.php文件中的__initView()方法中加入$dispatcher->getInstance()->disableView();
控制器中的一些方法:
$this->getView()->assign('名称','值');分配变量给视图
$this->getView()->render('文件路径');不写绝对则相对与views的文件的路径,也可传入绝对路径。这个参数可以用来做静态页。
设置视图的路径:可以在控制器中加入init()方法,在方法中加入$this->getView()->setScriptPath('文件路径')。
视图扩展名的修改:在应用的名称\conf\application.ini中修改application.view.ext = '文件扩展名称'