一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - PHP教程 - Thinkphp 框架配置操作之動態配置、擴展配置及批量配置實例分析

Thinkphp 框架配置操作之動態配置、擴展配置及批量配置實例分析

2020-06-23 13:46人生如初見_張默 PHP教程

這篇文章主要介紹了Thinkphp 框架配置操作之動態配置、擴展配置及批量配置,結合實例形式分析了Thinkphp配置操作中動態配置、擴展配置及批量配置基本原理、實現方法與相關注意事項,需要的朋友可以參考下

本文實例講述了Thinkphp 框架配置操作之動態配置擴展配置及批量配置。分享給大家供大家參考,具體如下:

 

動態配置

 

設置格式:

?
1
C('參數名稱','新的參數值')

例如,我們需要動態改變數據緩存的有效期的話,可以使用

?
1
2
// 動態改變緩存有效期
C('DATA_CACHE_TIME',60);

動態配置賦值僅對當前請求有效,不會對以后的請求造成影響。

動態改變配置參數的方法和讀取配置的方法在使用上面非常接近,都是使用C方法,只是參數的不同。

也可以支持二維數組的讀取和設置,使用點語法進行操作,如下:

?
1
2
3
4
// 獲取已經設置的參數值
C('USER_CONFIG.USER_TYPE');
// 設置新的值
C('USER_CONFIG.USER_TYPE',1);

 

擴展配置

 

擴展配置可以支持自動加載額外的自定義配置文件,并且配置格式和項目配置一樣。

設置擴展配置的方式如下(多個文件用逗號分隔):

?
1
2
// 加載擴展配置文件
'LOAD_EXT_CONFIG' => 'user,db',

假設擴展配置文件user.php db.php分別用于用戶配置和數據庫配置,這樣做的好處是哪怕以后關閉調試模式,你修改db配置文件后依然會自動生效。

如果在應用公共設置文件中配置的話,那么會自動加載應用公共配置目錄下面的配置文件Application/Common/Conf/user.phpApplication/Common/Conf/db.php

如果在模塊(假設是Home模塊)的配置文件中配置的話,則會自動加載模塊目錄下面的配置文件 Application/Home/Conf/user.php Application/Home/Conf/db.php

默認情況下,擴展配置文件中的設置參數會并入項目配置文件中。也就是默認都是一級配置參數,例如user.php中的配置參數如下:

?
1
2
3
4
5
6
7
<?php
//用戶配置文件
return array(
  'USER_TYPE'   => 2, //用戶類型
  'USER_AUTH_ID'  => 10, //用戶認證ID
  'USER_AUTH_TYPE' => 2, //用戶認證模式
);

那么,最終獲取用戶參數的方式是:

?
1
C('USER_AUTH_ID');

如果配置文件改成:

?
1
2
// 加載擴展配置文件
'LOAD_EXT_CONFIG' => array('USER'=>'user','DB'=>'db'),

則最終獲取用戶參數的方式改成:

?
1
C('USER.USER_AUTH_ID');

 

批量配置

 

C配置方法支持批量配置,例如:

?
1
2
$config = array('WEB_SITE_TITLE'=>'ThinkPHP','WEB_SITE_DESCRIPTION'=>'開源PHP框架');
C($config);

$config數組中的配置參數會合并到現有的全局配置中。

可以通過這種方式讀取數據庫中的配置參數,例如:

?
1
2
3
4
5
// 讀取數據庫中的配置(假設有一個config表用于保存配置參數)
$config =  M('Config')->getField('name,value');
// config是一個關聯數組 鍵值就是配置參數 值就是配置值
// 例如: array('config1'=>'val1','config2'=>'val2',...)
C($config); // 合并配置參數到全局配置

合并之后,我們就可以和前面讀取普通配置參數一樣,讀取數據庫中的配置參數了,當然也可以動態改變。

?
1
2
3
4
// 讀取合并到全局配置中的數據庫中的配置參數
C('CONFIG1');
// 動態改變配置參數(當前請求有效,不會自動保存到數據庫)
C('CONFIG2','VALUE_NEW');

希望本文所述對大家基于ThinkPHP框架的PHP程序設計有所幫助。

原文鏈接:https://blog.csdn.net/qq_42176520/article/details/81056910

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: a人片| 微福利92合集 | 亚洲AVAV天堂AV在线网爱情 | 九九99香蕉在线视频美国毛片 | 久久99国产亚洲高清观着 | 亚洲 欧美 制服 校园 动漫 | 贵妇的私人性俱乐部 | 动态图啪啪120秒免费看 | 羞羞影院午夜男女爽爽影院网站 | 精品国产免费第一区二区 | 欧美性理论片在线观看片免费 | 秋霞网毛片 | 国产一区二区视频在线 | 国产精品亚洲综合第一区 | 国产草| kkkk4444在线看片 | 亚洲国产韩国欧美在线不卡 | 亚洲精品国产福利片 | 99成人国产精品视频 | 色老大在线| 欧美亚洲第一页 | 狠狠操社区 | chinaspanking调教| 91私密保健女子养生spa | 日本大乳护士的引诱图片 | 国产精品九九热 | 乌克兰黄色录像 | 出差被灌醉绝伦的上司日本 | 国内在线观看 | 国产精品51麻豆cm传媒 | 女医学护士一级毛片 | 美女被扒开屁股进去网 | 亚洲精品m在线观看 | kuaibo成人播放器 | 麻豆在线观看 | 亚洲精品九色在线网站 | 爱爱亚洲 | 欧美色阁 | 久久精品国产亚洲AV热无遮挡 | 国内精品久久久久影院嫩草 | 添逼逼视频 |