日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
thinkphp5配置講解

 [[204500]]

創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供慈利網(wǎng)站建設(shè)、慈利做網(wǎng)站、慈利網(wǎng)站設(shè)計、慈利網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、慈利企業(yè)網(wǎng)站模板建站服務(wù),10余年慈利做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。

一、thinkphp配置類型有哪些?

1.在thinkphp中,有6種配置。即慣例配置,應(yīng)用配置、擴(kuò)展配置、模塊配置、場景配置、動態(tài)配置。

2.慣例配置就是系統(tǒng)默認(rèn)的配置。

3.應(yīng)用配置就是我們自己開發(fā)創(chuàng)建的應(yīng)用單獨(dú)的配置。

4.擴(kuò)展配置主要是實(shí)現(xiàn)我們項(xiàng)目在開發(fā)過程中有一些擴(kuò)展程序用到的配置。

5.模塊配置就是我們在一個應(yīng)用中,每一個模塊的配置。

6.場景配置主要是實(shí)現(xiàn)我們在不同的開發(fā)環(huán)境中設(shè)置的配置。若我們在家里面辦公,電腦環(huán)境可能不一樣;公司里面辦公,公司的電腦環(huán)境有不一樣。

7.動態(tài)配置在我們模塊中開發(fā)實(shí)現(xiàn)的動態(tài)配置。如我們在某一個控制器中定義數(shù)據(jù)庫的配置。

二、thinkphp配置的實(shí)現(xiàn)原理是什么樣的?

1.thinkphp實(shí)現(xiàn)這樣不同類型的配置,很大程度上面方面了我們進(jìn)行模塊化配置,增強(qiáng)了配置的靈活性。

2.thinkphp的配置加載順序主要是按照如下順序。動態(tài)配置》》模塊配置》》擴(kuò)展配置》》應(yīng)用配置》》慣例配置

3.thinkphp實(shí)現(xiàn)配置主要是使用了php的array_merage()函數(shù)(如果兩個或更多個數(shù)組元素有相同的鍵名,則***的元素會覆蓋其他元素。)。當(dāng)我們系統(tǒng)去加載我們的配置文件時,就會覆蓋前面的配置文件,因此才會實(shí)現(xiàn)上面第二步的執(zhí)行順序。

三、為什么要實(shí)現(xiàn)這樣的配置?

1.通過不同類型的配置,我們便于項(xiàng)目的配置管理。加入我們就使用框架自帶的配置,當(dāng)我們在某個模塊開發(fā)中,需要將數(shù)據(jù)存在另外一臺服務(wù)器的數(shù)據(jù)庫上,是不是我們的項(xiàng)目就不能實(shí)現(xiàn)了。像這種情況還很多,這只是一個簡單的例子。

四、配置文件要求

在所有的配置文件中都是采用數(shù)組的方式,當(dāng)我們系統(tǒng)在加載該配置文件時,都會return一個數(shù)組,這個數(shù)組就是我們的配置項(xiàng)目。我們在系統(tǒng)中訪問配置項(xiàng),可以使用config()助手函數(shù),也可以使用config類

五、如何是實(shí)現(xiàn)這些類型的配置呢?

1.慣例配置。

慣例配置直接在框架的核心目錄下面的convention.php中,這里不做細(xì)講。

2.應(yīng)用配置。

我們在創(chuàng)建項(xiàng)目時,框架會默認(rèn)在application目錄西面創(chuàng)建config.php,database.php等配置文件。我們直接在相應(yīng)的文件中進(jìn)行操作即可。下面單獨(dú)講解的主要是采用創(chuàng)建一個目錄來配置,效果都是一樣的,無非是換了個文件路徑而已。

a.定義配置文件路徑,找到項(xiàng)目入口文件,在application同級別目錄下創(chuàng)建一個config的目錄(后面配置講解都是在該目錄下面操作,下面就不單獨(dú)講解)。

 
 
 
  1. define('CONF_PATH', __DIR__.'/../config/'); 

接下來在該目錄下面直接創(chuàng)建配置文件即可,創(chuàng)建的文件名稱不一定局限于config,database。至于文件里面的配置項(xiàng)和convention.php配置文件的方式一致。當(dāng)我們在項(xiàng)目運(yùn)行過程中,會自動的加載該目錄下面的配置項(xiàng)。

3.擴(kuò)展配置。擴(kuò)展配置主要是我們在開發(fā)中用它的一些數(shù)據(jù)的擴(kuò)展使用,如我們使用郵箱,要涉及到郵箱的賬號。便可以在該目錄下面配置。我們在config目錄下面創(chuàng)建一個extra目錄,在該目錄下面創(chuàng)建對應(yīng)的文件。如我在下面創(chuàng)建了email.php文件,定義如下內(nèi)容:

 
 
 
  1. return [ 
  2. "user_emial" => "1005349393@qq.com" 
  3. ]; 

在我們系統(tǒng)中加載該配置項(xiàng)。

 
 
 
  1. var_dump(config("email.user_emial")); // 在系統(tǒng)默認(rèn)中,會給我們的環(huán)境變量都加一個PHP的前綴,并且都會將配置項(xiàng)轉(zhuǎn)換為大寫。這里我們使用我們的助手函數(shù)便可直接訪問配置項(xiàng)。 

4.模塊配置。這里大致講解一下即可。主要的就是在我們的模塊目錄下面創(chuàng)建對應(yīng)的config.php,database.php等文件即可。

5.場景配置。***這是本文的大招。場景配置主要是為了適應(yīng)我們不同的開發(fā)環(huán)境,例如我們在公司的環(huán)境和在家里面的環(huán)境配置不一致,此時我們可能需要修改很多地方,同時回到了公司又得修改過來,這樣豈不是很麻煩。

首先,我們在config目錄下面的配置文件中加載一個配置項(xiàng)。

 
 
 
  1. 'app_status'             => 'office', // 這里的配置項(xiàng)的值就是我們對應(yīng)的配置環(huán)境。 

接下來,在我們的config目錄下面創(chuàng)建一個office.php(這里的文件名必須和上面配置項(xiàng)的值完全一致)

***,我們直接在我們的office.php配置文件中配置即可。其實(shí)在thinkphp還有個比較不錯的功能就是.env。之前一直知道laravel有,沒主要thinkphp5,最近才發(fā)現(xiàn)。使用該功能對于開發(fā)中的配置又方便了很多了。很贊。

首先我們在我們的項(xiàng)目目錄下面創(chuàng)建一個.env的文件,里面配置我們的配置項(xiàng)。如下

 
 
 
  1. status= office 

我們要使用的話,直接使用框架自帶的env類即可。至于更多有關(guān)env的方法直接參考開發(fā)手冊。

 
 
 
  1. 'app_status' => Env::get("status");我們將上一步場景配置項(xiàng)中的值設(shè)置為.env文件中的配置項(xiàng)。一定要引入ENV這個類。 

通過我們的.env文件,只需要我們實(shí)現(xiàn)將一些配置文件配置好,或者將一些常用的配置文件放在.env文件中,我們就只修改這一個文件即可。

6.動態(tài)配置。動態(tài)配置顧名思義是隨著我們項(xiàng)目開發(fā)的需要來配置,而不是直接使用我們配置文件中的配置。下面列舉一個簡單的實(shí)例。

 
 
 
  1. namespace app\index\controller; 
  2. use think\Controller; 
  3. class Index extends Controller 
  4.     public function index() 
  5.     { 
  6.         config("app_name", "weixin"); // 在控制器中配置一個app_name的配置項(xiàng),這里也可以使用config類來操作。 
  7.     } 

本節(jié)小結(jié):本文講解的配置方式主要是為了項(xiàng)目開發(fā)方便,并非一定要這樣操作,可按照個人的習(xí)慣來操作。


新聞標(biāo)題:thinkphp5配置講解
文章出自:http://www.dlmjj.cn/article/cocicjp.html