Yaf安装

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('文件路径')。
    视图扩展名的修改:在应用的名称\conf\application.ini中修改application.view.ext = '文件扩展名称'

你可能感兴趣的:(php技术)