亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

ThinkPHP中Common-common.php文件常用函數功能分析

2020-03-22 19:02:20
字體:
來源:轉載
供稿:網友
本文實例分析了ThinkPHP/Common/common.php文件常用函數功能。分享給大家供大家參考,具體如下: * 獲取和設置配置參數 支持批量定義 * @param string|array $name 配置變量 * @param mixed $html' target='_blank'>value 配置值 * @return mixedfunction C($name=null, $value=null) { static $_config = array(); // 無參數時獲取所有 if (empty($name)) { if(!empty($value) && $array = cache('c_'.$value)) { //array_change_key_case():將數組中的所有鍵名改為全小寫或大寫,默認會改為全小寫 $_config = array_merge($_config, array_change_key_case($array)); return $_config; // 優先執行設置獲取或賦值,如果參數2為空,則為獲取配置配置變量的值的情況;如果參數2不為空,則是為配置變量設置值的情況 if (is_string($name)) {//給配置變量設置值或者獲取配置變量的值 if (!strpos($name, '.')) {//如果配置變量名中沒有".",則執行下面代碼 $name = strtolower($name);//將配置變量名轉化為小寫 if (is_null($value)) return isset($_config[$name]) $_config[$name] : null;//獲取配置變量值的情況,返回配置變量的值 $_config[$name] = $value;//給配置變量設置值的情況 return; // 二維數組設置和獲取支持 $name = explode('.', $name); $name[0] = strtolower($name[0]); if (is_null($value)) return isset($_config[$name[0]][$name[1]]) $_config[$name[0]][$name[1]] : null;//獲取值的情況 $_config[$name[0]][$name[1]] = $value;//賦值的情況 return; // 批量設置 if (is_array($name)){//批量設置值 //array_change_key_case():將數組中的所有鍵名改為全小寫或大寫,默認會改為全小寫,注意:只是將鍵名改為小寫哦 $_config = array_merge($_config, array_change_key_case($name)); if(!empty($value)) {// 保存配置值 cache('c_'.$value,$_config); return; return null; // 避免非法參數
* 處理標簽擴展,如: 項目開始標簽的調用,tag('app_begin'); * @param string $tag 標簽名稱 * @param mixed $params 傳入參數 * @return mixedfunction tag($tag, &$params=NULL) { // 系統或框架標簽擴展 // C('extends', include THINK_PATH.'Conf/tags.php');//這個文件很重要 $extends = C('extends.' . $tag);//$_config['extends'][app_init] // 應用或項目標簽擴展 // C('tags', include CONF_PATH.'tags.php'); //項目中也可以編寫自己的tags.php文件 $tags = C('tags.' . $tag);//$_config['tags'][app_init] if (!empty($tags)) {//如果$tags不為空 if(empty($tags['_overlay']) && !empty($extends)) { // 合并擴展 $tags = array_unique(array_merge($extends,$tags)); }elseif(isset($tags['_overlay'])){ // 通過設置 '_overlay'= 1 覆蓋系統標簽 unset($tags['_overlay']); }elseif(!empty($extends)) { $tags = $extends; if($tags) { if(APP_DEBUG) { G($tag.'Start'); trace('[ '.$tag.' ] --START--','','INFO'); // 執行擴展 foreach ($tags as $key= $name) { if(!is_int($key)) { // 指定行為類的完整路徑 用于模式擴展 $name = $key; //創建行為類對象,如:$ 'Behavior';$behavior = new $class();//創建一個行為類對象 B($name, $params);//執行某個行為,參數1-行為名稱 參數2-傳入的參數 if(APP_DEBUG) { // 記錄行為的執行日志 trace('[ '.$tag.' ] --END-- [ RunTime:'.G($tag.'Start',$tag.'End',6).'s ]','','INFO'); }else{ // 未執行任何行為 返回false return false;
function B($name, &$params=NULL) { //行為類在Think.class.php文件中的autoload($class)函數中自動加載 $class = $name.'Behavior';//行為類的名稱 G('behaviorStart'); $behavior = new $class();//創建一個行為類對象 $behavior- run($params);//給當前行為類對象傳遞參數 if(APP_DEBUG) { // 記錄行為的執行日志 trace('Run '.$name.' Behavior [ RunTime:'.G('behaviorStart','behaviorEnd',6).'s ]','','INFO');注意:行為類、模型類、控制器類 都是在Think.class.php文件中的autoload函數中自動加載的:* 系統自動加載ThinkPHP類庫* 并且支持配置自動加載路徑* @param string $class 對象類名* @return void//行為類、模型類、控制器類 都是通過autoload函數自動加載的public static function autoload($class) { // 檢查是否存在別名定義 if(alias_import($class)) return ; //行為類都是通過此函數自動加載的 if(substr($class,-8)=='Behavior') { // 加載行為 if(require_cache(CORE_PATH.'Behavior/'.$class.'.class.php') || require_cache(EXTEND_PATH.'Behavior/'.$class.'.class.php') || require_cache(LIB_PATH.'Behavior/'.$class.'.class.php') || (defined('MODE_NAME') && require_cache(MODE_PATH.ucwords(MODE_NAME).'/Behavior/'.$class.'.class.php'))) { return ; }elseif(substr($class,-5)=='Model'){ // 加載模型 if((defined('GROUP_NAME') && require_cache(LIB_PATH.'Model/'.GROUP_NAME.'/'.$class.'.class.php')) || require_cache(LIB_PATH.'Model/'.$class.'.class.php') || require_cache(EXTEND_PATH.'Model/'.$class.'.class.php') ) { return ; }elseif(substr($class,-6)=='Action'){ // 加載控制器 if((defined('GROUP_NAME') && require_cache(LIB_PATH.'Action/'.GROUP_NAME.'/'.$class.'.class.php')) || require_cache(LIB_PATH.'Action/'.$class.'.class.php') || require_cache(EXTEND_PATH.'Action/'.$class.'.class.php') ) { return ; // 根據自動加載路徑設置進行嘗試搜索 $paths = explode(',',C('APP_AUTOLOAD_PATH')); foreach ($paths as $path){ if(import($path.'.'.$class)) // 如果加載類成功則返回 return ;

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
一本色道久久88综合亚洲精品ⅰ| 亚洲精品白浆高清久久久久久| 亚洲免费伊人电影在线观看av| 91热福利电影| 福利一区视频在线观看| 成人免费午夜电影| 亚洲精品一区二三区不卡| 亚洲乱码av中文一区二区| 成人在线国产精品| 欧美中文字幕在线视频| 欧美肥婆姓交大片| 欧美午夜激情小视频| 欧美日本高清一区| 亚洲精品狠狠操| 国产精品成人国产乱一区| 国产激情久久久| 国产欧美日韩免费看aⅴ视频| 亚洲成年人在线播放| 揄拍成人国产精品视频| 国产精品视频在线观看| 97在线精品国自产拍中文| 亚洲人成电影在线| 亚洲精品久久7777777| 青青久久av北条麻妃海外网| 久久视频免费在线播放| 久久久999精品| 亚洲国产精久久久久久久| 国产亚洲精品91在线| 久久久久久69| 色综合久综合久久综合久鬼88| 国模精品视频一区二区三区| 亚洲精品第一国产综合精品| 国产精品日韩在线观看| 日韩精品有码在线观看| 日韩视频中文字幕| 日韩av电影免费观看高清| 国产一区私人高清影院| 欧美激情xxxx性bbbb| 青草青草久热精品视频在线网站| 成人黄色在线播放| 成人xxxxx| 日韩av在线免费| 精品呦交小u女在线| 91在线视频一区| 国产精品综合不卡av| 久久99视频免费| 色先锋资源久久综合5566| 黑人巨大精品欧美一区二区一视频| 国产亚洲欧美一区| 一级做a爰片久久毛片美女图片| 5252色成人免费视频| 丝袜美腿亚洲一区二区| 一本色道久久88综合日韩精品| 日韩中文字幕视频在线| 美女av一区二区| 国产精品18久久久久久麻辣| 久久视频国产精品免费视频在线| 国产精品极品美女粉嫩高清在线| 久久成人免费视频| 日本中文字幕久久看| 欧美成年人视频网站| 成人午夜黄色影院| 精品亚洲一区二区三区在线播放| 亚洲人成免费电影| 亚洲精品一区av在线播放| 国产精品美女久久| 一区二区三区四区精品| 亚洲欧洲激情在线| 亚洲丝袜在线视频| 国产精品扒开腿爽爽爽视频| 亚洲视频网站在线观看| 国产成人精品在线| 欧美香蕉大胸在线视频观看| 亚洲视频欧美视频| 欧美劲爆第一页| 国产又爽又黄的激情精品视频| 日韩中文在线观看| 日韩免费看的电影电视剧大全| 精品久久久视频| 亚洲欧美精品在线| 97精品久久久中文字幕免费| 国产午夜精品全部视频在线播放| 97精品一区二区视频在线观看| 亚洲精品国产美女| 欧美在线观看一区二区三区| 日韩欧美国产高清91| 精品中文字幕在线观看| 福利视频第一区| 91人人爽人人爽人人精88v| 国产日韩在线一区| 欧美黄色免费网站| 久久色在线播放| 国产精品久久久精品| 国产精品久久久久久影视| 懂色aⅴ精品一区二区三区蜜月| 亚洲电影免费在线观看| 91精品国产色综合| 国产自摸综合网| 日本精品视频在线观看| 久久深夜福利免费观看| 亚洲一区二区三区777| 亚洲偷熟乱区亚洲香蕉av| 亚洲成人av在线播放| 91免费国产视频| 一区二区三区四区视频| 97人洗澡人人免费公开视频碰碰碰| 在线播放国产一区中文字幕剧情欧美| 91网在线免费观看| 成人精品福利视频| 久久精品视频99| 国产精品久久久久久久久| 久久综合亚洲社区| 国产99久久精品一区二区永久免费| 欧美日韩一区免费| 自拍偷拍亚洲区| 91精品在线国产| 亚洲天堂一区二区三区| 午夜欧美不卡精品aaaaa| 欧美激情啊啊啊| 国产精品久久久久久久久久尿| 亚洲国产欧美精品| 午夜美女久久久久爽久久| 国产精品爽爽爽爽爽爽在线观看| 欧美电影在线观看网站| 日韩免费av一区二区| 久久久久久久久久国产| 亚洲国产精品视频在线观看| 亚洲第一色中文字幕| 国产欧美精品一区二区三区介绍| 成人看片人aa| 欧美国产精品人人做人人爱| 亚洲精品自在久久| 91网站免费观看| 欧美日韩xxxxx| 中文字幕不卡av| 亚洲人成毛片在线播放| 午夜精品理论片| 久久国产精品久久久久久| 亚洲色图国产精品| 日韩av快播网址| 亚洲图片欧美午夜| 成人黄色短视频在线观看| 欧美日韩成人在线视频| 欧美亚洲另类视频| 九色精品美女在线| 亚洲一级片在线看| 国产美女精彩久久| 日韩动漫免费观看电视剧高清| 欧美成人免费在线观看| 亚洲视频第一页| 一区二区三区四区在线观看视频| 欧美日韩国产成人高清视频| 成人久久一区二区三区| 亚洲第一黄色网| 久久久久成人网| 亚洲成人亚洲激情| 精品久久久久久久久久久久久久| 成人在线观看视频网站| 欧美极品少妇xxxxⅹ免费视频| 亚洲成人激情图| 亚洲一区二区国产| 久久成人在线视频| 亚洲成人黄色在线观看| 日韩av综合中文字幕|