日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Yaf框架的配置

發布時間:2025/3/14 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Yaf框架的配置 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
http://www.laruence.com/manual/yaf.ini.html //先看一下惠新宸鳥哥yaf官網的配置說明

我們可以在php.ini中定義開發環節配置項,把本地開發設置成develop、測試環境配置成test、生產環境配置成product。代碼如下,默認的是product

[yaf] yaf.environ=develop

通過設置運行環境,在項目中可以通過ini_get(‘yaf.environ’)獲取環境參數。

yaf配置文件一般都放在項目的conf文件夾下,yaf application實例化的時候需要傳遞一個配置文件路徑,配置文件叫application.ini,先看下application.ini的結構:

[common] ; 通用配置[product : common] ; 生產環境配置[test : common] ; 測試環境配置[develop : common] ; 開發環境配置

配置例子如下代碼

application.debug = TRUE ;當意外的錯誤發生的時候,開啟/關閉異常拋出。 當開啟的時候,Yaf將會拋出異常而不是觸發可捕捉的錯誤。 ;1拋出異常. 0獲取可以調試的錯誤 application.dispatcher.throwException = 0 ;開啟/關閉自動異常捕獲功能 ;1 Yaf會將所有未捕獲的異常交給Error Controller的Error Action來處理. 0直接打印 application.dispatcher.catchException = 0 ;如果 throwException = 0,那么 catchException是什么都無所謂了. 因為catchException是捕獲異常的. ;如果 throwException = 1, catchException的值決定異常處理方式.但catchException為1,必須定義Error Controller,否則還會報這個錯誤. ; ;redis.namespace = "TEST_" ;redis.servers.host = '127.0.0.1' ;redis.servers.port = '6379' ;redis.servers.password = '' ;redis.servers.weight = 1Redis.namespace = "TEST_" Redis.servers.host = '127.0.0.1' Redis.servers.port = '6379' Redis.servers.password = '' Redis.servers.weight = 1sessRedis.host = '127.0.0.1' sessRedis.port = '6379' sessRedis.timeout = 0.5 sessRedis.db = 9 sessRedis.auth = ''DB_TYPE="mysql" DB_HOST="127.0.0.1" DB_PORT="3306" DB_CHARSET="utf8" DB_NAME="kmjd" DB_USER="root" DB_PWD="root"

配置除了節之外,節和節之間還有繼承關系。

例如[product : common]就表示product的配置會繼承common的配置。

yaf在實例化應用傳遞配置文件路徑和運行環境:

define("APPLICATION_PATH", realpath(dirname(__FILE__) . '/../')); $app = new \Yaf\Application(APPLICATION_PATH . "/conf/application.ini", ini_get('yaf.environ'));

這樣當項目運行環境在develop下的時候,會優先讀取[develop : common]內的配置,如果沒有則會從[common]中獲取。

\Yaf\Application::app()->getConfig(); //在項目中任何地方都可以通過次代碼獲取application.ini中的配置。

事實上該例中可以不用傳遞ini_get(‘yaf.environ’)參數,在實例化的時候yaf會自行讀取php.ini中的yaf.environ參數。但如果是其它的配置文件,則需要傳遞該參數。代碼如下

$app = new Yaf_Application(APP_PATH . "/conf/application.ini");

代碼中獲取配置項的方法如下

$this->_config = Yaf_Application::app()->getConfig()->get("Redis"); $this->_host = $this->_config['servers']['host']; $this->_port = $this->_config['servers']['port']; $this->_db = $this->_config['servers']['db'];

當然,除了用yaf指定的application.ini配置之外,把所有的配置都歸結到一個文件中,也可以分開配置,yaf中提供了\Yaf\Config\Ini類來處理這些額外的配置文件。

$config = new \Yaf\Config\Ini(APPLICATION_PATH . '/conf/url.ini', ini_get('yaf.environ'));

在實際讀取的時候,最好能設置一個靜態變量保存讀取到的配置,避免重復申請系統open函數調用。如下:

static $config = null; if ($config === null) {$config = new \Yaf\Config\Ini(APPLICATION_PATH . '/conf/url.ini', ini_get('yaf.environ')); }

詳細可以參考yaf擴展示例Bootstrap中的getUrlIniConfig方法。

?

轉載于:https://www.cnblogs.com/wt645631686/p/7725126.html

總結

以上是生活随笔為你收集整理的Yaf框架的配置的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。