程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> 關於PHP編程 >> 淺析php與數據庫代碼開發規范

淺析php與數據庫代碼開發規范

編輯:關於PHP編程

1、PHP中對各類變量內容的命名規范
 
(1)目錄命名、文件命名、局部變量命名:
使用英文名詞、動詞,以下劃線作為單詞的分隔,所有字母均使用小寫
目錄:upload、templates、install、manage……
文件:index.php 、 register.php  、 config.php……
變量:$user , $pay_time , $pay_del_cont ……

(2)全局常量命名:
使用英文名詞、動詞,所有字母都使用大寫,以下劃線分隔每個單詞
define( 'WEBSITE_NAME', '名稱' );
define( 'WEBSITE_URL',  '地址' );
英文名詞、動(3)數組變量命名:
詞,以下劃線作為分隔,所有字母均使用小寫以array結束
$scope_array  = array();
$book_id_array = array();

(4)對象變量命名:
英文名詞、動詞,以下劃線作為分隔,可以完整采用類名或是簡化類名,但是必須明確知道是什麼類,所有字母均使用小寫,在變量後加上_obj

$user_obj   = new userAccount();
$pay_obj   = new payOrder();

(5)類的命名:
使用英文名詞,以大寫字母作為詞的分隔,其他的字母均使用小寫,名詞的首個字母使用小寫,不使用下劃線

class userAccount{ ……}

(6)方法命名:
使用英文名詞、動詞,以下劃線作為單詞的分隔,所有字母均使用小寫
復制代碼 代碼如下: 
class userAccount {
 public $name_account=‘';
 function is_account_ok(){
  ...
 }
 function add_account(){
  ...
 }
}


關於對象屬性的命名同理!

2、PHP中函數、符號、運算寫作規范
 (1)if語句大括號{}規則:
將大括號放置在關鍵詞後方
使用IF語句盡量使用大括號
復制代碼 代碼如下: 
if ( $condition ){
 ...
}else{
 …
}
 
(2)、switch規則
每個case塊結束處必須加上break,而default總應該存在處理未知情況,例:
復制代碼 代碼如下: 
switch( $condition ){
 case 'user':
  ...
  break;
 case 'type':
  ...
  break;
 default:
  ...
  break;
}
 
(3)、聲明定位規則
聲明代碼塊需要對齊,且初次使用變量時需要初始化
$tableName = '';
$databaseObject = '';
盡量不使用以下方式,例:
$tableName;
$accuntName = '';
$databaseObject = '';

html的form表單各個元素名稱與數據庫字段盡量保持一致。
不要采用缺省方法測試非零值,必須顯式測試,例:
if ( $name_pay_into != false ){
 ...
}else{
 ...
}

*盡可能使用單引號''而不是雙引號"",在需要加入變量或是寫sql語句除外。
*php文件中盡可能不出現html語句,如果實在無法解決盡量少用,考慮到模板的兼容性,
html文件中盡可能避免出現php語句。
*通常每個方法只執行一項邏輯動作事務,所以對它們的命名應該清楚的說明它們是做什麼的:
用email_error_check()代替error_check()。

請注意命名不要與系統方法沖突。

3、PHP中各類注釋規范
/**
*  分頁預處理函數
*  sql SQL語句
*  page 當前頁數
*  limit 每頁顯示的數量
*  maxs 查詢總數
*/
function limit($sql,$page='0',$limit=10,$maxs=''){ }

//用戶檢測
if( $check_obj->username( $username ) == true ){ … }

$user_name = $_GET[user];  //獲取用戶信息

4、數據庫設計與操作規范
 
數據庫規范
數據庫名稱應該由概述項目內容的小寫英文名詞組成,以下劃線分隔單詞,
避免跨平台時可能出現的大小寫錯誤。

數據表名稱應該由物件對象名稱的小寫英文名詞組成(盡可能對應系統中的業務類名稱),以下劃線分隔單詞,避免跨平台時可能出現的大小寫錯誤。

數據表的字段應避免使用varchar、text等不定長的類型,時間信息的字段使用int類型存儲。
查詢數據連接多表時各資源應該使用全名稱,即tableName.fieldName,而不是fieldName。
SQL語句應盡可能符合ansi92標准,避免使用特定數據庫對SQL語言的擴充特性。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved