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 = '文件扩展名称'新闻热点
疑难解答