通過包含文件來組織項目

日期:2008-07-02  作者:喜騰小二  來源:PHPChina


include()語句給了PHP程序員一個強大的項目管理工俱。將一些內容或者佈局的思想放到包含文件中可能會使妳的開發時間節

省無數個小時。

(PHP編程中)至少有兩個通用的包含文件,所謂通用,是指必須在任何PHP页面的頂部都要引用(或包含)。這兩個引用文件

主要的作用是我不用艱難的在我的程序中嵌入或者編碼 域名、路徑和鏈接。我可以很容易的將我的工程從我的開發開發的機器

上移植到產品服務器上。

包含文件:config.php

config.php 文件是用來保存數據庫連接細節和其他的設置

phpdefine('DB_HOST','localhost');
define('DB_USER', 'jatinder');
define('DB_PASSWORD','secret');
define('DB_DATABASE','xyz');
define('TFX','xyz_');
define('SERVER_URL','http://localhost');
define('APP_FOL','/phpsense/');
?>
第一行我們為將來使用mysql_connect()和mysql_select_db()函數定義了連接細節。
接着我們定義了一個TFX常量用來作為數據表的標準前綴。將這個前綴加到數據庫所有的表中。
每個項目的表前綴都是獨一無二
的。
即使妳知道將一個新的乾淨的數據安裝到項目中,但這並不妨礙妳添加一個前綴。
如果妳正在本地機上開發一個叫做phpsense 的項目 ,在大多數情況下, PHP文件將在
phpsense ”文件夾下的htdocs目錄。
URL到您的項目看起來會像http://localhost/phpsense/
我將這個路徑分為兩部分:SERVER_URLAPP_FOL ( 程序文件夾)
當我將項目從我的開發機器上移植到產品服務器上,我僅僅是將SERVER_URL (服務器路徑)
改成站點的域名(比如:http://phpsense.com
APP_FOL 從“/phpsense/”變成“/”。
app-top.php 包含文件
在這個包含文件中我們初始化我們的程序:
1.開啓緩存輸出
2.開啓session
3.打開數據庫連接
4.定義其他的共用變量和常量
phpob_start('ob_gzhandler');
session_start();
error_reporting(E_ALL);
require_once('config.php');
define('APP_URL',SERVER_URL.APP_FOL);
define('SERVER_DOC_ROOT',$_SERVER['DOCUMENT_ROOT']);
define('APP_DIR',SERVER_DOC_ROOT.APP_FOL);
define('INCLUDES_DIR',APP_DIR.'includes/');
define('LIB_DIR',APP_DIR.'lib/');
define('UPLOADS_DIR',APP_DIR.'uploads/');
define('UPLOADS_URL',APP_URL.'uploads/');
$link=mysql_connect(DB_HOST,DB_USER,DB_PASSWORD);
if(!$link) {
print("Failed to establish connection to mysql server!");
exit();
}
$status=mysql_select_db(DB_DATABASE);
?>
app-top.php 腳本除了開啓session和連接數據庫之外,還定義了一對常量,他們是我到各種文件
夾所需要的基本路徑或URL
比如INCLUDES_DIR 給我存放了包含文件的的路徑地址。
所以,不是使用:
phpinclude("includes/myscript.php");
?>
我使用:
phpinclude(INCLUDES_DIR."myscript.php");
?>
現在我不用擔心我的相對地址,此外我可以重命名我包含文件夾而不用中斷程序。
不要在妳的程序中使用硬編碼的路徑和URL,使用類似的這樣常量。
現在妳要做的是在每個PHP页面的頂部引用 app-top.php ,任何一個包含了這個文件的页面都會有一個
session,緩存輸出,
數據庫連接和預定義包含文件和庫的路徑。
注意:妳不需要在其他的包含文件中引用app-top.php ,隻需要在页面頂部引用它。
為什麼是兩個文件
妳可能要問,為什麼我用了兩個單獨的文件,我可以很容易的使兩者合二為一。答案是這樣做可以獲
得更多的靈活性。
假設一個客戶要求我為程序創建安裝腳本,現在我必須要創建簡單的表單和將值寫入config.php文件,
通過PHP將值寫入config.php
比寫app-top.php更簡單。

<<<返回技術中心

技術文章

站內新聞

我要啦免费统计