| 導購 | 订阅 | 在线投稿
分享
 
 
 

通過包含文件來組織項目

來源:互聯網  2008-12-22 08:09:29  評論

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_URL和APP_FOL( 程序文件夾)當我將項目從我的開發機器上移植到産品服務器上,我僅僅是將SERVER_URL(服務器路徑)改成站點的域名(比如:http://phpsense.com)將APP_FOL從「/phpsense/」變成「/」。app-top.php包含文件在這個包含文件中我們初始化我們的程序:1.開啓緩存輸出2.開啓session3.打開數據庫連接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更簡單。

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到您的項目看起來會像[url=http://localhost/phpsense/]http://localhost/phpsense/[/url]我將這個路徑分爲兩部分:SERVER_URL和APP_FOL( 程序文件夾)當我將項目從我的開發機器上移植到産品服務器上,我僅僅是將SERVER_URL(服務器路徑)改成站點的域名(比如:[url=http://phpsense.com]http://phpsense.com[/url])將APP_FOL從「/phpsense/」變成「/」。app-top.php包含文件在這個包含文件中我們初始化我們的程序:1.開啓緩存輸出2.開啓session3.打開數據庫連接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更簡單。
󰈣󰈤
王朝萬家燈火計劃
期待原創作者加盟
 
 
 
>>返回首頁<<
 
 
 
 
 熱帖排行
 
王朝網路微信公眾號
微信掃碼關註本站公眾號 wangchaonetcn
 
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有