|
1、php中對(duì)各類變量?jī)?nèi)容的命名規(guī)范
(1)目錄命名、文件命名、局部變量命名:
使用英文名詞、動(dòng)詞,以下劃線作為單詞的分隔,所有字母均使用小寫(xiě)
目錄:upload、templates、install、manage……
文件:index.php 、 register.php 、 config.php……
變量:$user , $pay_time , $pay_del_cont ……
(2)全局常量命名:
使用英文名詞、動(dòng)詞,所有字母都使用大寫(xiě),以下劃線分隔每個(gè)單詞
define( 'WEBSITE_NAME', '名稱' );
define( 'WEBSITE_URL', '地址' );
英文名詞、動(dòng)(3)數(shù)組變量命名:
詞,以下劃線作為分隔,所有字母均使用小寫(xiě)以array結(jié)束
$scope_array = array();
$book_id_array = array();
(4)對(duì)象變量命名:
英文名詞、動(dòng)詞,以下劃線作為分隔,可以完整采用類名或是簡(jiǎn)化類名,但是必須明確知道是什么類,所有字母均使用小寫(xiě),在變量后加上_obj
$user_obj = new userAccount();
$pay_obj = new payOrder();
(5)類的命名:
使用英文名詞,以大寫(xiě)字母作為詞的分隔,其他的字母均使用小寫(xiě),名詞的首個(gè)字母使用小寫(xiě),不使用下劃線
class userAccount{ ……}
(6)方法命名:
使用英文名詞、動(dòng)詞,以下劃線作為單詞的分隔,所有字母均使用小寫(xiě)
復(fù)制代碼 代碼如下:
class userAccount {
public $name_account=‘';
function is_account_ok(){
...
}
function add_account(){
...
}
}
關(guān)于對(duì)象屬性的命名同理!
2、php中函數(shù)、符號(hào)、運(yùn)算寫(xiě)作規(guī)范
(1)if語(yǔ)句大括號(hào){}規(guī)則:
將大括號(hào)放置在關(guān)鍵詞后方
使用IF語(yǔ)句盡量使用大括號(hào)
復(fù)制代碼 代碼如下:
if ( $condition ){
...
}else{
…
}
(2)、switch規(guī)則
每個(gè)case塊結(jié)束處必須加上break,而default總應(yīng)該存在處理未知情況,例:
復(fù)制代碼 代碼如下:
switch( $condition ){
case 'user':
...
break;
case 'type':
...
break;
default:
...
break;
}
(3)、聲明定位規(guī)則
聲明代碼塊需要對(duì)齊,且初次使用變量時(shí)需要初始化
$tableName = '';
$databaseObject = '';
盡量不使用以下方式,例:
$tableName;
$accuntName = '';
$databaseObject = '';
html的form表單各個(gè)元素名稱與數(shù)據(jù)庫(kù)字段盡量保持一致。
不要采用缺省方法測(cè)試非零值,必須顯式測(cè)試,例:
if ( $name_pay_into != false ){
...
}else{
...
}
*盡可能使用單引號(hào)''而不是雙引號(hào)"",在需要加入變量或是寫(xiě)sql語(yǔ)句除外。
*php文件中盡可能不出現(xiàn)html語(yǔ)句,如果實(shí)在無(wú)法解決盡量少用,考慮到模板的兼容性,
html文件中盡可能避免出現(xiàn)php語(yǔ)句。
*通常每個(gè)方法只執(zhí)行一項(xiàng)邏輯動(dòng)作事務(wù),所以對(duì)它們的命名應(yīng)該清楚的說(shuō)明它們是做什么的:
用email_error_check()代替error_check()。
請(qǐng)注意命名不要與系統(tǒng)方法沖突。
3、php中各類注釋規(guī)范
/**
* 分頁(yè)預(yù)處理函數(shù)
* sql SQL語(yǔ)句
* page 當(dāng)前頁(yè)數(shù)
* limit 每頁(yè)顯示的數(shù)量
* maxs 查詢總數(shù)
*/
function limit($sql,$page='0',$limit=10,$maxs=''){ }
//用戶檢測(cè)
if( $check_obj->username( $username ) == true ){ … }
$user_name = $_GET[user]; //獲取用戶信息
4、數(shù)據(jù)庫(kù)設(shè)計(jì)與操作規(guī)范
數(shù)據(jù)庫(kù)規(guī)范
數(shù)據(jù)庫(kù)名稱應(yīng)該由概述項(xiàng)目?jī)?nèi)容的小寫(xiě)英文名詞組成,以下劃線分隔單詞,
避免跨平臺(tái)時(shí)可能出現(xiàn)的大小寫(xiě)錯(cuò)誤。
數(shù)據(jù)表名稱應(yīng)該由物件對(duì)象名稱的小寫(xiě)英文名詞組成(盡可能對(duì)應(yīng)系統(tǒng)中的業(yè)務(wù)類名稱),以下劃線分隔單詞,避免跨平臺(tái)時(shí)可能出現(xiàn)的大小寫(xiě)錯(cuò)誤。
數(shù)據(jù)表的字段應(yīng)避免使用varchar、text等不定長(zhǎng)的類型,時(shí)間信息的字段使用int類型存儲(chǔ)。
查詢數(shù)據(jù)連接多表時(shí)各資源應(yīng)該使用全名稱,即tableName.fieldName,而不是fieldName。
SQL語(yǔ)句應(yīng)盡可能符合ansi92標(biāo)準(zhǔn),避免使用特定數(shù)據(jù)庫(kù)對(duì)SQL語(yǔ)言的擴(kuò)充特性。
php技術(shù):淺析php與數(shù)據(jù)庫(kù)代碼開(kāi)發(fā)規(guī)范,轉(zhuǎn)載需保留來(lái)源!
鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。