色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP 引用文件技巧

我們知道,Java中有包的概念,而.NET中則有更加方便的DLL程序集引用的概念,通過這些以打包形式組合在一起的對象集合,我們可以很方便的在自己的類中引用其他地方定義的類或其他對象,但由于php中沒有相應的概念,所以在需要引用其他文件中定義的對象時,php程序員最常用的兩個函數莫過于require_once和include了,通過這兩個函數,我們可以使用其他類庫中定義的類等對象。但很多人在使用包含相同目錄下的其他文件時,僅僅簡單使用下面的代碼進行文件引用:
復制代碼 代碼如下:
include('include.php');

當然這種方式并沒有錯誤,只不過在效率上它比下面的方式要稍稍差些:
復制代碼 代碼如下:
include(realpath(dirname(_FILE_)).DIRECTORY_SEPARATOR.'include.php');

這種方式我們可能需要輸入更多一些,但相對于前面那種需要php引擎去include_path 中迭代查找所有名稱為'include.php'才能查找到相應對象來說,dirname(__FILE__)這種絕對路徑的指定會讓系統迅速定位到相應文件。

php中常量__FILE__ 其實跟C#中的AppDomain.CurrentDomain.BaseDirectory非常類似,它返回的是當前代碼正在執行的代碼所在文件的絕對路徑。而函數dirname()則返回其父文件夾路徑。

另外一個更查找效率高,并且書寫簡單的方式是include('./include.php'),這相當于告訴系統查找當前路徑下的'include.php'文件。

在大型系統中我們常常使用另外一個更好的方式,我們常常在路由文件或其他初始化文件中加入如下代碼:
復制代碼 代碼如下:
define('APP_PATH',realpath(dirname(_FILE_)));

這相當于給系統添加了一個全局變量來指出系統根目錄,當我們后面需要引用某具體路徑下的文件時我們就可以使用如下代碼了:
復制代碼 代碼如下:
include(APP_PATH.DIRECTORY_SEPARATOR.'models'.'User.php');

希望這個小小的總結能對你有所幫助!
作者:Sean Zhu
出處:http://jujusharp.cnblogs.com

php技術PHP 引用文件技巧,轉載需保留來源!

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

主站蜘蛛池模板: 城步| 长丰县| 绥宁县| 大新县| 收藏| 宣汉县| 武清区| 常州市| 崇礼县| 吴桥县| 凭祥市| 泾川县| 祁东县| 平塘县| 瑞昌市| 高平市| 荥经县| 西乌珠穆沁旗| 泽普县| 巴南区| 兴隆县| 三门峡市| 崇信县| 东阿县| 祁阳县| 水城县| 泽普县| 唐山市| 乐陵市| 金溪县| 溆浦县| 崇阳县| 莲花县| 嘉峪关市| 海晏县| 汤原县| 泾源县| 新邵县| 金沙县| 河东区| 海阳市|