《PHP編程:Yii全局函數(shù)用法示例》要點(diǎn):
本文介紹了PHP編程:Yii全局函數(shù)用法示例,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
相關(guān)主題:YII框架
本文實(shí)例講述了Yii全局函數(shù)用法.分享給大家供大家參考,具體如下:PHP應(yīng)用
由于YII致力于完美的整合第三方庫,它并沒有定義任何全局函數(shù).yii中的每一個(gè)應(yīng)用都需要全類別和對(duì)象范圍.PHP應(yīng)用
例如,Yii::app()->user;Yii::app()->params['name'];等等.我們可以自行設(shè)定全局函數(shù),使得代碼看起來更加簡(jiǎn)潔易用.PHP應(yīng)用
我們可以保存在globals.php在protected/config目錄下.然后,在入口腳本index.php中,定義如下內(nèi)容:PHP應(yīng)用
$globals=dirname(__FILE__).'/protected/config/globals.php'; ... require_once($yii); require_once($globals);
現(xiàn)在我們可以在應(yīng)用的任何地方使用我們的全局函數(shù),例如可以使用user()代替Yii::app()->user.注:如果你打算發(fā)布一個(gè)可重用的組件,請(qǐng)不要組件中使用全局函數(shù),在不同的應(yīng)用配置中,可能導(dǎo)致無法使用.同時(shí),也應(yīng)注意與第三方庫的沖突,可考慮對(duì)每個(gè)函數(shù)前加上自己的前綴,已做區(qū)分,例如框架核心均已C為前綴.PHP應(yīng)用
下面是代碼包含最常用的一些快捷功能.如還需其他,請(qǐng)自行添加.PHP應(yīng)用
/** * This is the shortcut to DIRECTORY_SEPARATOR */ defined('DS') or define('DS', DIRECTORY_SEPARATOR); /** * This is the shortcut to Yii::app() */ function app() { return Yii: :app(); } /** * This is the shortcut to Yii::app()->clientScript */ function cs() { // You could also call the client script instance via Yii::app()->clientScript // But this is faster return Yii: :app() - >getClientScript(); } /** * This is the shortcut to Yii::app()->user. */ function user() { return Yii: :app() - >getUser(); } /** * This is the shortcut to Yii::app()->createUrl() */ function url($route, $params = array(), $ampersand = '&') { return Yii: :app() - >createUrl($route, $params, $ampersand); } /** * This is the shortcut to CHtml::encode */ function h($text) { return htmlspecialchars($text, ENT_QUOTES, Yii: :app() - >charset); } /** * This is the shortcut to CHtml::link() */ function l($text, $url = '#', $htmlOptions = array()) { return CHtml: :link($text, $url, $htmlOptions); } /** * This is the shortcut to Yii::t() with default category = 'stay' */ function t($message, $category = 'stay', $params = array(), $source = null, $language = null) { return Yii: :t($category, $message, $params, $source, $language); } /** * This is the shortcut to Yii::app()->request->baseUrl * If the parameter is given, it will be returned and prefixed with the app baseUrl. */ function bu($url = null) { static $baseUrl; if ($baseUrl === null) $baseUrl = Yii: :app() - >getRequest() - >getBaseUrl(); return $url === null ? $baseUrl: $baseUrl.'/'.ltrim($url, '/'); } /** * Returns the named application parameter. * This is the shortcut to Yii::app()->params[$name]. */ function param($name) { return Yii: :app() - >params[$name]; } /** * A useful one that I use in development is the following * which dumps the target with syntax highlighting on by default */ function dump($target) { return CVarDumper: :dump($target, 10, true); }
更多關(guān)于Yii相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Yii框架入門及常用技巧總結(jié)》、《php優(yōu)秀開發(fā)框架總結(jié)》、《smarty模板入門基礎(chǔ)教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php字符串(string)用法總結(jié)》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》PHP應(yīng)用
希望本文所述對(duì)大家基于Yii框架的PHP程序設(shè)計(jì)有所幫助.PHP應(yīng)用
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.fzlkiss.com/jiaocheng/1923.html