一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

很讓人受教的 提高php代碼質(zhì)量36計

1.不要使用相對路徑
常常會看到:
require_once('../../lib/some_class.php');
該方法有很多缺點:
它首先查找指定的php包含路徑, 然后查找當前目錄.
因此會檢查過多路徑.
如果該腳本被另一目錄的腳本包含, 它的基本目錄變成了另一腳本所在的目錄.
另一問題, 當定時任務運行該腳本, 它的上級目錄可能就不是工作目錄了.
因此最佳選擇是使用絕對路徑:
define('ROOT' , '/var/www/project/');
require_once(ROOT . '../../lib/some_class.php');
//rest of the code
我們定義了一個絕對路徑, 值被寫死了. 我們還可以改進它. 路徑 /var/www/project 也可能會改變, 那么我們每次都要改變它嗎? 不是的, 我們可以使用__FILE__常量, 如:
//suppose your script is /var/www/project/index.php
//Then __FILE__ will always have that full path.
define('ROOT' , pathinfo(__FILE__, PATHINFO_DIRNAME));
require_once(ROOT . '../../lib/some_class.php');
//rest of the code
現(xiàn)在, 無論你移到哪個目錄, 如移到一個外網(wǎng)的服務器上, 代碼無須更改便可正確運行.
2. 不要直接使用 require, include, include_once, required_once
可以在腳本頭部引入多個文件, 像類庫, 工具文件和助手函數(shù)等, 如:
require_once('lib/Database.php');
require_once('lib/Mail.php');
require_once('helpers/utitlity_functions.php');
這種用法相當原始. 應該更靈活點. 應編寫個助手函數(shù)包含文件. 例如:
function load_class($class_name)
{
//path to the class file
$path = ROOT . '/lib/' . $class_name . '.php');
require_once( $path );
}
load_class('Database');
load_class('Mail');
有什么不一樣嗎? 該代碼更具可讀性.
主站蜘蛛池模板: 人人澡人人模人人添 | 四虎永久精品免费观看 | 91射射射| 婷婷激情综合网 | 国产激情视频在线观看 | av基地| 天天色天天综合 | 精品视频第一页 | 国产亚洲精品国产第一 | 亚洲国产成人资源在线软件 | 国产三级全黄在线观看 | 国产亚洲青色国产 | 黄色小视频网 | 四虎影视国产在线观看精品 | 成人激情在线 | 一区二区三区美女视频 | 国产原创91 | 日韩中文一区 | 东京加勒比2021一区 | 国模青青丰满人体大尺度展示 | 免费在线看黄 | 99精品久久99久久久久久 | 女的毛片毛片毛毛片毛毛毛毛片 | 一区二区不卡视频 | 国产成人精品亚洲2020 | 国产永久在线视频 | 欧美一级久久久久久久大片 | 国产福利在线观看 极品美女 | 精品日韩欧美一区二区三区 | 8090碰成年女人免费碰碰尤物 | 欧美精品国产制服第一页 | 韩国一级成a人片在线观看 韩国一级毛片 | 色五夜婷婷 | 久久免费视频8 | 国产精品视频牛仔裤一区 | 日本在线观看www | 国产精品视频一区二区三区小说 | 中文字幕一区二区在线观看 | 激情小视频在线观看 | 亚洲看片网站 | 国产天堂在线观看 |