PHP開(kāi)發(fā)規(guī)范手冊(cè)之PHP代碼規(guī)范詳解
更新時(shí)間:2011年01月13日 23:25:58 作者:
對(duì)于PHP入門(mén)學(xué)習(xí)的童鞋來(lái)說(shuō),了解PHP開(kāi)發(fā)規(guī)范可以少走很多彎路,網(wǎng)上各種PHP開(kāi)發(fā)規(guī)范也很多,我結(jié)合自身使用PHP的情況,來(lái)說(shuō)說(shuō)我所理解的PHP開(kāi)發(fā)規(guī)范。
涉及多個(gè)方面,比如PHP代碼規(guī)范、PHP文件命名規(guī)范、網(wǎng)站開(kāi)發(fā)流程、網(wǎng)站安全與維護(hù)等。
作為PHP開(kāi)發(fā)規(guī)范的開(kāi)篇,我從一個(gè)純PHP開(kāi)發(fā)者的角度來(lái)說(shuō)說(shuō)我所認(rèn)為的PHP代碼規(guī)范,主要從PHP目錄框架結(jié)構(gòu)、PHP代碼書(shū)寫(xiě)規(guī)范、PHP文件命名規(guī)范三個(gè)角度來(lái)闡述,希望對(duì)PHP入門(mén)學(xué)習(xí)者有所幫助。
合理建設(shè)PHP目錄框架結(jié)構(gòu)
我們知道在使用PHP進(jìn)行網(wǎng)站開(kāi)發(fā)之前,我們需要建設(shè)網(wǎng)站的目錄結(jié)構(gòu),網(wǎng)站目錄框架結(jié)構(gòu)設(shè)計(jì)得合理規(guī)范,不但有利于網(wǎng)站開(kāi)發(fā),而且對(duì)SEO,網(wǎng)站推廣都有好處。
一般最基礎(chǔ)的PHP網(wǎng)站結(jié)構(gòu)涉及圖片、CSS文件、JS文件、第三方組件、管理后臺(tái)等內(nèi)容,相對(duì)應(yīng)的,基礎(chǔ)的PHP目錄框架結(jié)構(gòu)也涉及這些內(nèi)容,這些目錄命名時(shí)也有規(guī)范,比如
圖片目錄:images或者pic
CSS目錄:css
JS目錄:js
第三方組件目錄:libs或者include,下一級(jí)目錄可以根據(jù)具體的組件名定義目錄名
管理目錄:一般都是admin,單位了安全起見(jiàn),你可以另起一個(gè)目錄名或者對(duì)admin目錄設(shè)置密碼保護(hù)。如何對(duì)訪問(wèn)目錄設(shè)置密碼保護(hù)?
特別提醒:對(duì)于網(wǎng)站的框架目錄結(jié)構(gòu),事先要做好規(guī)劃,為了對(duì)搜索引擎友好便于網(wǎng)站推廣,建議目錄結(jié)構(gòu)層次不要太深,二三級(jí)目錄結(jié)構(gòu)就可以了。
另外如果你采用模板,可以創(chuàng)建模板目錄,比如將目錄命名為tpl,如果使用第三方模板引擎,比如smarty,你可以根據(jù)需要自行決定是否要另設(shè)目錄。PHP基礎(chǔ)教程:Smarty安裝教程
對(duì)于中等規(guī)模的網(wǎng)站,你也可以根據(jù)網(wǎng)站功能劃分網(wǎng)站目錄框架結(jié)構(gòu),比如按照頻道等。
PHP文件命名規(guī)范
良好的PHP文件命名規(guī)范也是PHP開(kāi)發(fā)規(guī)范的要素,有助于記憶,便于管理,PHP網(wǎng)站程序文件的命名也有一定的規(guī)則,比如
PHP網(wǎng)站首頁(yè)文件命名規(guī)范:index.php或index.html
CSS文件命名規(guī)范:主CSS文件命名為style.css,另外你也可以針對(duì)具體的模塊或者頻道命名,比如用于用戶的CSS文件,可以定義為user_style.css或者u_style.css
JS文件命名規(guī)范:主JS文件命名為main.js或major.js,其他的JS文件命名,你可以根據(jù)具體的頁(yè)面或者特定的對(duì)象命名,比如首頁(yè)JS文件可以命名為index.js,服務(wù)于用戶登錄的JS文件可以命名為user_login.js等。
網(wǎng)站配置文件命名規(guī)范:config.php或default_config.php等
文件命名特別提醒:在對(duì)PHP文件進(jìn)行命名時(shí)考慮到可移植性,一律請(qǐng)使用小寫(xiě)命名,另外與網(wǎng)站目錄名命名一樣,文件命名時(shí)可以采用兩種方式,一種可以使用拼音命名具體的文件,一種可以使用簡(jiǎn)單明了的英語(yǔ)單詞命名文件,切勿隨便命名,導(dǎo)致今后維護(hù)混亂。
PHP代碼書(shū)寫(xiě)規(guī)范
良好的PHP代碼規(guī)范,有助于PHP入門(mén)學(xué)習(xí)者從你寫(xiě)的PHP代碼中受益,也有助于你今后的代碼維護(hù)。
1、對(duì)于所寫(xiě)的PHP代碼,添加必要的代碼注釋,同時(shí)代碼注釋要規(guī)范,更多基礎(chǔ)PHP代碼書(shū)寫(xiě)規(guī)范,請(qǐng)參考PHP基本語(yǔ)法教程
2、保持良好的PHP代碼書(shū)寫(xiě)規(guī)范,合理使用縮進(jìn),保持代碼美觀。
3、使用賦值符時(shí)變量名、賦值符、值之間以空格分隔,即
<?
$leapsoulcn = "歡迎訪問(wèn)PHP網(wǎng)站教程網(wǎng),此節(jié)主要介紹PHP開(kāi)發(fā)規(guī)范之PHP代碼規(guī)范";
?>
4、在書(shū)寫(xiě)if、switch、函數(shù)代碼時(shí),務(wù)必保持大括號(hào)匹配,即
<?
if(){
......
}
?>
或者
<?
if()
{
......
}
?>
5、命名變量名或者函數(shù)名時(shí)注意代碼書(shū)寫(xiě)規(guī)范,可以使用拼音、英語(yǔ)單詞、縮寫(xiě)等形式,推薦以英語(yǔ)單詞作為PHP代碼命名規(guī)范,對(duì)于兩個(gè)單詞以上的以下劃線連接或者其中一個(gè)單詞首字母大寫(xiě)的形式,即
<?
$web_name = "PHP網(wǎng)站開(kāi)發(fā)教程網(wǎng)";
$webUrl = "http://chabaoo.cn";
function userLogin()
{
}
?>
以上就是基礎(chǔ)的PHP代碼規(guī)范,對(duì)于PHP初學(xué)者學(xué)習(xí)PHP會(huì)有所幫助。養(yǎng)成良好的PHP代碼規(guī)范會(huì)讓開(kāi)發(fā)者受益一生。
至此,PHP開(kāi)發(fā)規(guī)范手冊(cè)之PHP代碼規(guī)范就介紹完了,良好的網(wǎng)站框架目錄構(gòu)建能力、PHP文件命名規(guī)范和PHP代碼書(shū)寫(xiě)規(guī)范需要自己在不斷的開(kāi)發(fā)中積累和養(yǎng)成,同時(shí)這些開(kāi)發(fā)規(guī)范也有助于伙伴之間的合作,有助于PHP入門(mén)學(xué)習(xí)者學(xué)習(xí)你的PHP代碼。
作為PHP開(kāi)發(fā)規(guī)范的開(kāi)篇,我從一個(gè)純PHP開(kāi)發(fā)者的角度來(lái)說(shuō)說(shuō)我所認(rèn)為的PHP代碼規(guī)范,主要從PHP目錄框架結(jié)構(gòu)、PHP代碼書(shū)寫(xiě)規(guī)范、PHP文件命名規(guī)范三個(gè)角度來(lái)闡述,希望對(duì)PHP入門(mén)學(xué)習(xí)者有所幫助。
合理建設(shè)PHP目錄框架結(jié)構(gòu)
我們知道在使用PHP進(jìn)行網(wǎng)站開(kāi)發(fā)之前,我們需要建設(shè)網(wǎng)站的目錄結(jié)構(gòu),網(wǎng)站目錄框架結(jié)構(gòu)設(shè)計(jì)得合理規(guī)范,不但有利于網(wǎng)站開(kāi)發(fā),而且對(duì)SEO,網(wǎng)站推廣都有好處。
一般最基礎(chǔ)的PHP網(wǎng)站結(jié)構(gòu)涉及圖片、CSS文件、JS文件、第三方組件、管理后臺(tái)等內(nèi)容,相對(duì)應(yīng)的,基礎(chǔ)的PHP目錄框架結(jié)構(gòu)也涉及這些內(nèi)容,這些目錄命名時(shí)也有規(guī)范,比如
圖片目錄:images或者pic
CSS目錄:css
JS目錄:js
第三方組件目錄:libs或者include,下一級(jí)目錄可以根據(jù)具體的組件名定義目錄名
管理目錄:一般都是admin,單位了安全起見(jiàn),你可以另起一個(gè)目錄名或者對(duì)admin目錄設(shè)置密碼保護(hù)。如何對(duì)訪問(wèn)目錄設(shè)置密碼保護(hù)?
特別提醒:對(duì)于網(wǎng)站的框架目錄結(jié)構(gòu),事先要做好規(guī)劃,為了對(duì)搜索引擎友好便于網(wǎng)站推廣,建議目錄結(jié)構(gòu)層次不要太深,二三級(jí)目錄結(jié)構(gòu)就可以了。
另外如果你采用模板,可以創(chuàng)建模板目錄,比如將目錄命名為tpl,如果使用第三方模板引擎,比如smarty,你可以根據(jù)需要自行決定是否要另設(shè)目錄。PHP基礎(chǔ)教程:Smarty安裝教程
對(duì)于中等規(guī)模的網(wǎng)站,你也可以根據(jù)網(wǎng)站功能劃分網(wǎng)站目錄框架結(jié)構(gòu),比如按照頻道等。
PHP文件命名規(guī)范
良好的PHP文件命名規(guī)范也是PHP開(kāi)發(fā)規(guī)范的要素,有助于記憶,便于管理,PHP網(wǎng)站程序文件的命名也有一定的規(guī)則,比如
PHP網(wǎng)站首頁(yè)文件命名規(guī)范:index.php或index.html
CSS文件命名規(guī)范:主CSS文件命名為style.css,另外你也可以針對(duì)具體的模塊或者頻道命名,比如用于用戶的CSS文件,可以定義為user_style.css或者u_style.css
JS文件命名規(guī)范:主JS文件命名為main.js或major.js,其他的JS文件命名,你可以根據(jù)具體的頁(yè)面或者特定的對(duì)象命名,比如首頁(yè)JS文件可以命名為index.js,服務(wù)于用戶登錄的JS文件可以命名為user_login.js等。
網(wǎng)站配置文件命名規(guī)范:config.php或default_config.php等
文件命名特別提醒:在對(duì)PHP文件進(jìn)行命名時(shí)考慮到可移植性,一律請(qǐng)使用小寫(xiě)命名,另外與網(wǎng)站目錄名命名一樣,文件命名時(shí)可以采用兩種方式,一種可以使用拼音命名具體的文件,一種可以使用簡(jiǎn)單明了的英語(yǔ)單詞命名文件,切勿隨便命名,導(dǎo)致今后維護(hù)混亂。
PHP代碼書(shū)寫(xiě)規(guī)范
良好的PHP代碼規(guī)范,有助于PHP入門(mén)學(xué)習(xí)者從你寫(xiě)的PHP代碼中受益,也有助于你今后的代碼維護(hù)。
1、對(duì)于所寫(xiě)的PHP代碼,添加必要的代碼注釋,同時(shí)代碼注釋要規(guī)范,更多基礎(chǔ)PHP代碼書(shū)寫(xiě)規(guī)范,請(qǐng)參考PHP基本語(yǔ)法教程
2、保持良好的PHP代碼書(shū)寫(xiě)規(guī)范,合理使用縮進(jìn),保持代碼美觀。
3、使用賦值符時(shí)變量名、賦值符、值之間以空格分隔,即
復(fù)制代碼 代碼如下:
<?
$leapsoulcn = "歡迎訪問(wèn)PHP網(wǎng)站教程網(wǎng),此節(jié)主要介紹PHP開(kāi)發(fā)規(guī)范之PHP代碼規(guī)范";
?>
4、在書(shū)寫(xiě)if、switch、函數(shù)代碼時(shí),務(wù)必保持大括號(hào)匹配,即
復(fù)制代碼 代碼如下:
<?
if(){
......
}
?>
或者
復(fù)制代碼 代碼如下:
<?
if()
{
......
}
?>
5、命名變量名或者函數(shù)名時(shí)注意代碼書(shū)寫(xiě)規(guī)范,可以使用拼音、英語(yǔ)單詞、縮寫(xiě)等形式,推薦以英語(yǔ)單詞作為PHP代碼命名規(guī)范,對(duì)于兩個(gè)單詞以上的以下劃線連接或者其中一個(gè)單詞首字母大寫(xiě)的形式,即
復(fù)制代碼 代碼如下:
<?
$web_name = "PHP網(wǎng)站開(kāi)發(fā)教程網(wǎng)";
$webUrl = "http://chabaoo.cn";
function userLogin()
{
}
?>
以上就是基礎(chǔ)的PHP代碼規(guī)范,對(duì)于PHP初學(xué)者學(xué)習(xí)PHP會(huì)有所幫助。養(yǎng)成良好的PHP代碼規(guī)范會(huì)讓開(kāi)發(fā)者受益一生。
至此,PHP開(kāi)發(fā)規(guī)范手冊(cè)之PHP代碼規(guī)范就介紹完了,良好的網(wǎng)站框架目錄構(gòu)建能力、PHP文件命名規(guī)范和PHP代碼書(shū)寫(xiě)規(guī)范需要自己在不斷的開(kāi)發(fā)中積累和養(yǎng)成,同時(shí)這些開(kāi)發(fā)規(guī)范也有助于伙伴之間的合作,有助于PHP入門(mén)學(xué)習(xí)者學(xué)習(xí)你的PHP代碼。
相關(guān)文章
如何使用FireFox插件FirePHP調(diào)試PHP
使用這個(gè)工具,首先你需要安裝FirePHP插件。這個(gè)插件需要你已經(jīng)安裝FireBug。裝好FirePHP之后,重新打開(kāi)Firebug面板時(shí)候,你會(huì)看到新加了一個(gè)藍(lán)色的臭蟲(chóng)圖標(biāo)。點(diǎn)擊這個(gè)圖標(biāo)會(huì)出現(xiàn)一個(gè)開(kāi)啟或者關(guān)閉FirePHP的菜單2013-07-07PHP數(shù)組相加操作及與array_merge的區(qū)別淺析
這篇文章主要給大家介紹了關(guān)于PHP數(shù)組相加操作以及與array_merge的區(qū)別,文中通過(guò)示例介紹的很詳細(xì),感興趣的朋友們可以參考學(xué)習(xí),有需要的下面跟著小編一起來(lái)學(xué)習(xí)學(xué)習(xí)吧。2016-11-11php中限制ip段訪問(wèn)、禁止ip提交表單的代碼分享
在項(xiàng)目應(yīng)用中,我們經(jīng)常需要用到限制ip段訪問(wèn)或者限制IP提交表單等等ip相關(guān)的功能,今天我來(lái)分享下本人所使用的這塊代碼,希望對(duì)大家有所幫助2014-08-08phpword插件導(dǎo)出word文件時(shí)中文亂碼問(wèn)題處理方案
PHPWord是一個(gè)可以把相關(guān)文件生成word文檔的插件了,但由于是老外開(kāi)發(fā)的對(duì)于gbk支持不好,所以我們?cè)趯?dǎo)出帶有中文的word時(shí)會(huì)出現(xiàn)亂碼問(wèn)題,下面本文就PHPWord中文亂碼問(wèn)題介紹一些解決方法。2014-08-08php實(shí)現(xiàn)文件上傳及頭像預(yù)覽功能
這篇文章主要介紹了php實(shí)現(xiàn)文件上傳及頭像預(yù)覽功能的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01php+ajax實(shí)現(xiàn)文件切割上傳功能示例
這篇文章主要介紹了php+ajax實(shí)現(xiàn)文件切割上傳功能,結(jié)合實(shí)例形式分析了PHP結(jié)合HTML5 File對(duì)象的slice函數(shù)進(jìn)行文件切割與ajax無(wú)刷新上傳相關(guān)操作技巧,需要的朋友可以參考下2020-03-03mysql數(shù)據(jù)庫(kù)差異比較的PHP代碼
這天遇見(jiàn)個(gè)需求:由于升級(jí)系統(tǒng) 這些系統(tǒng)從A庫(kù)升級(jí)到B庫(kù),但是不知道數(shù)據(jù)庫(kù)添加了哪些字段和增加了哪些表2012-02-02