Yaf之配置和Bootstrap

原创 2016年06月01日 14:07:26

1.Yaf之配置文件application.ini

conf/application.ini
1.关于yaf中的配置信息大部分都写在这里了!我们先来看一个例子

[common]
application.directory=APP_PATH"/application/"

[product : common]

2.打印出配置信息看一下:
application/controllers/Index.php

<?php

class IndexController extends Yaf_Controller_Abstract {
    public function indexAction() {
        //读取配置文件
        $config = Yaf_Application::app()->getConfig();
        //打印配置信息
        echo '<pre>';
        print_r($config);
        echo '</pre>';
    }
}
?>

3.查看配置信息
这里写图片描述
4.那么怎么加入多组配置信息呢,比如我有两个redis服务器
很简单,可以看出上面的配置文件,里面有一个common组,下面列出的配置信息打印在了浏览器上!那么我们就可以再添加一个redis的组

[common]
application.directory=APP_PATH"/application/"

[redis]
;用作缓存的redis服务器
redis.cache.host = 192.168.254.128
redis.cache.port = 6379
redis.cache.dbIndex = 1

;用作存储用户信息的redis服务器
redis.user.host = 192.168.254.128
redis.user.port = 6379
redis.user.dbIndex = 12

;别忘了在这里加上你要读取的配置组名
[product : common : redis]

这里写图片描述

2.Yaf之Bootstrap

这是yaf提供的一个自带的钩子功能,这里提供了6个Hook分别是:
这里写图片描述
Boostrap.php中以_init开头的方法会依次执行。
具体使用方法:
application/Bootstrap.php

class Bootstrap extends Yaf_Bootstrap_Abstract {
    private $_config;
    /*
     * 注册一个插件
     * 插件的目录是在application_directory/plugins
     */
    public function _initPlugin(Yaf_Dispatcher $dispatcher) {
        //加载plugin下面的User.php插件
        $user = new UserPlugin();
        $dispatcher->registerPlugin($user);
    }
    //可以添加其他以_init开头的方法
    public function _initConfig(Yaf_Dispatcher $dispatcher) {
        $this->_config = Yaf_Application::app()->getConfig();
        Yaf_Registry::set("config", $this->_config);
    }
}

插件application/plugins/User.php

class UserPlugin extends Yaf_Plugin_Abstact {
    public function routerStartup(Yaf_Request_Abstract $request, Yaf_Response_Abstract $response) {
        echo "在路由出发之前";
    }
    //下面就可以放入上面钩子中的方法
}

入口文件index.php

<?php
define("APP_PATH", realpath(dirname(__FILE__)));
$app = new Yaf_Application(APP_PATH."/conf/application.ini");
$app->bootstrap()->run();
?>

这里写图片描述

版权声明:本文为博主原创文章,未经博主允许不得转载。

Yaf学习之Bootstrap

Yaf的Bootstrap机制,提供了一个全局配置的入口,它: 运行于Yaf_Application:run()之前,必须手动调用,如$app->bootstrap()->run(); 类名必须为Bo...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

PHP安装加载yaf扩展,并用自动生成目录实现hello world程序

准备工作:        确定系统已经安装了gcc、gcc-c++、make、automake、autoconf等依赖库,如果之前装好了PHP那么这些依赖应该都有了,推荐用yum管理安装php环境。 ...

php把文件上传到远程服务器上例子

在这里我们利用curl实现把本地服务器的文件通过curl发送请求给远程服务器的php文件接受就实现了上传,还一个是利用ftp来上传方法也是php中的curl操作ftp服务器进行上传。 我这里写的...

Windows上使用ionic开发IOS程序

开发ios程序需要mac本,但是好多屌丝们没有Mac 本,那就在虚拟机上安装一个MacOS,凑合着用吧。下面我就以我自己的亲身经历,带着ionic爱好者一步一步的在windows上开发ios程序安装V...

yaf 路由协议配置测试

好久没写博客了,最近老板让我转到php部门,要学习Yaf,它的路由机制真心难理解,主要是官方文档没有写清楚,网上也没有太多的实用的文档。特地写一篇博客供大家参考。各种路由协议的原理请大家参考http:...

centos6.0配置lamp+yaf环境配置

  • 2013年06月17日 11:56
  • 345KB
  • 下载

yaf -- 路由访问/配置

yaf 在Bootstrap.php文件下注册路由协议 public function _initRoute(Yaf_Dispatcher $dispatcher) { $router...
  • Cpath
  • Cpath
  • 2017年04月04日 22:55
  • 438

windows下配置安装YAF环境

Yaf是一个C语言编写的PHP框架,这款框架是由鸟哥Laruence开发的;鸟哥是国内PHP开发组核心成员, Zend顾问, PHP7主要开发者, Yaf, Yar, Yac等开源项目作者.本文就是主...

在Yaf中使用Zf2的配置和服务管理器

在zf2中路由,派遣和服务注册,模块注册拖累了整个速度. 计划用yaf代替zf2的mvc模块....
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Yaf之配置和Bootstrap
举报原因:
原因补充:

(最多只允许输入30个字)