【第22期】观点:IT 行业加班,到底有没有价值?

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();
?>

这里写图片描述

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

相关文章推荐

Redis安装、配置、操作、持久化、主从、phpredis扩展安装使用详解之持久化与主从

前言 前面我们详细地讲解了Redis的安装配置和详细使用,这一章来详细讲讲Redis的持久化与主从。Redis支持两种持久化方式,① 快照持久化 、② AOF持久化。两种持久化都是为了保证数据的安全...

Redis的安装、使用以及php中扩展redis并实现php操作redis的一个例子

Redis的安装、使用以及php中扩展redis并实现php操作redis的一个例子 从结果中可以看出,redis并没有起到作用,后来分析分析,由于之前在redis.conf文件中配置了密码登录red...

将多维数组变成一维数组并去重

/* * 把多维数组转化成一维数组或是字符串(去重) * @param array $arr 要转化的多数组 * @param bool $returnArr 是否返回一维数组,默认为true,...

Bootstrap框架的配置

Bootstrap是响应式设计的框架,想具体的了解自己百度。下面直接直接进入主题——Bootstrap开发的配置一、点击进入Bootstrap中文网 二、点击“Bootstrap中文文档” 三、点...

bootstrap --环境配置

bootstrap安装配置

bootstrap安装配置 下载Bootstrap 打开官方网站http://getbootstrap.com/,点击Download Bootstrap。 ...

Django+bootstrap配置过程

1.建立django的project django-admin.py startproject mysite 2.在与manage.py同级的project目录里建立django的app ./mana...

bootstrap-table自己配置

bootstrap-table自己配置

bootstrap使用总结

如何禁用 BootStrap Modal 点击空白时自动关闭的方法  方法如下 $('#myModal').modal({backdrop: 'static', keyboard: false...

bootstrap-table的一些配置参数例子

bootstrap-table的一些配置参数
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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