中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

ThinkPHP中文件的加載方式有哪些

發布時間:2021-01-16 10:24:12 來源:億速云 閱讀:167 作者:小新 欄目:編程語言

這篇文章將為大家詳細講解有關ThinkPHP中文件的加載方式有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

ThinkPHP中系統提供了三個文件加載方式:

函數庫形式加載:

函數庫再ThinkPHP中包括三類:系統函數庫文件(functions.php)、應用級別函數庫文件、分組級別函數文件。

這三類函數庫文件只有系統函數庫文件(functions.php)是系統默認存在的,而另外兩類函數庫形式需要自行創建。

同時要注意,只有系統函數庫文件名為functions.php,而另外兩類函數庫形式文件名叫做function.php。

案例:使用函數庫形式定義需要使用的函數。函數名:testfunction

<?php
 
function testfunction(){
	echo 'testfunction';
}
    public function test(){
        testfunction();
    }

展示結果:

ThinkPHP中文件的加載方式有哪些

定義好的函數庫文件中的函數,在使用的時候遵循php內置函數語法的要求,直接寫上函數名(參數)就可以了。

說明:

第一:不需要引入function.php,系統在執行的時候自動幫我們引入了文件function.php文件;

第二:如果函數定義在應用級別的函數庫文件中,則能在全部的分組(整個應用)使用;如果函數定義在某個分組的函數庫文件中,則只能在當前的分組中使用,否則會報函數未定義。

通過配置項動態加載:

在系統的執行流程中有 一個文件會被執行到App.class.php

    static public function init() {
        // 加載動態應用公共文件和配置
        load_ext_file(COMMON_PATH);

在該方法中執行了一個load_ext_file函數。

該方法并不是php內置的方法,而是在系統函數庫文件中定義的:

ThinkPHP中文件的加載方式有哪些

function load_ext_file($path) {
    // 加載自定義外部文件
    if($files = C('LOAD_EXT_FILE')) {
        $files      =  explode(',',$files);
        foreach ($files as $file){
            $file   = $path.'Common/'.$file.'.php';
            if(is_file($file)) include $file;
        }
    }

擴展:C方法

C方法也是快速方法之一,其作用是操作ThinkPHP中的配置項:

C(name,value); 設置配置項name的值,值是value

C(name); 讀取配置項name的值

C(); 讀取全部的配置項

配置項:

在應用級別的配置文件中定義配置項LOAD_EXT_FILE,引入文件info.php。

    'load_ext_file'         =>  'info',     
    //包含文件名的字符串,多個文件名通過使用英文半角逗號分割

在應用函數庫文件目錄中定義一個info.php

<?php
 
function getInfo(){
	phpinfo();
}

ThinkPHP中文件的加載方式有哪些

測試:

    public function test(){
        getInfo();
    }

展示結果:

ThinkPHP中文件的加載方式有哪些

上述需要注意的是,同樣文件在系統封裝的方法中已經進行了引入,所以在使用具體的函數的時候不需要再對文件進行單獨的引入,只需要像使用函數庫文件的形式直接編寫需要使用的函數名即傳遞相應的參數即可。

通過load方法加載

語法:

load(‘@/不帶后綴的php文件名’);

需要注意的是,文件必須存在于分組級別的函數庫目錄中,并且只能用于定義的分組中。

案例:通過自己在分組目錄中創建文件hello.php,然后在其中定義一個函數,然后再去使用load方法加載并且使用其中的函數。

<?php
 
function sayhello($who){
	echo 'hello ' . $who;
}

在控制器中使用load方法加載hello.php文件:

    public function test(){
        //load
        load('@/hello');
        //調用函數
        sayhello(world);
    }

展示效果:

ThinkPHP中文件的加載方式有哪些

說明:上述三個文件的加載方式在實際開發的時候都可以使用,但是一般以第一種為主(通過函數庫形式自動加載)。

關于“ThinkPHP中文件的加載方式有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

崇仁县| 巩义市| 孟连| 汝阳县| 三都| 黎川县| 麦盖提县| 高唐县| 夏邑县| 桂东县| 阳新县| 兴宁市| 长丰县| 平顺县| 扶风县| 竹溪县| 南涧| 宜城市| 阿合奇县| 茌平县| 资中县| 定州市| 长垣县| 白银市| 宁海县| 开封市| 天柱县| 台中县| 永泰县| 阳朔县| 渝中区| 望都县| 微博| 陈巴尔虎旗| 南丹县| 日喀则市| 汉沽区| 松桃| 勐海县| 中江县| 来宾市|