命名規范
開發的過程中應該盡量遵循下列命名規范:
- 類文件都是以.class.php為后綴(這里是指的ThinkPHP內部使用的類庫文件,不代表外部加載的類庫文件),使用駝峰法命名,並且首字母大寫,例如
DbMysql.class.php;- 類的命名空間地址和所在的路徑地址一致,例如
Home\Controller\UserController類所在的路徑應該是Application/Home/Controller/UserController.class.php;- 確保文件的命名和調用大小寫一致,是由於在類Unix系統上面,對大小寫是敏感的(而ThinkPHP在調試模式下面,即使在Windows平台也會嚴格檢查大小寫);
- 類名和文件名一致(包括上面說的大小寫一致),例如
UserController類的文件命名是UserController.class.php, InfoModel類的文件名是InfoModel.class.php, 並且不同的類庫的類命名有一定的規范;- 函數、配置文件等其他類庫文件之外的一般是以
.php為后綴(第三方引入的不做要求);- 函數的命名使用小寫字母和下划線的方式,例如
get_client_ip;- 方法的命名使用駝峰法,並且首字母小寫或者使用下划線“_”,例如
getUserName,_parseType,通常下划線開頭的方法屬於私有方法;- 屬性的命名使用駝峰法,並且首字母小寫或者使用下划線“_”,例如
tableName、_instance,通常下划線開頭的屬性屬於私有屬性;- 以雙下划線“__”打頭的函數或方法作為魔法方法,例如
__call和__autoload;- 常量以大寫字母和下划線命名,例如
HAS_ONE和MANY_TO_MANY;- 配置參數以大寫字母和下划線命名,例如
HTML_CACHE_ON;- 語言變量以大寫字母和下划線命名,例如
MY_LANG,以下划線打頭的語言變量通常用於系統語言變量,例如_CLASS_NOT_EXIST_;- 對變量的命名沒有強制的規范,可以根據團隊規范來進行;
- ThinkPHP的模板文件默認是以
.html為后綴(可以通過配置修改);- 數據表和字段采用小寫加下划線方式命名,並注意字段名不要以下划線開頭,例如
think_user表和user_name字段是正確寫法,類似_username這樣的數據表字段可能會被過濾。
流程語句規范
所有流程語句的花括號都單獨占據一行。理由:如果遇到較為復雜的業務邏輯,花括號會出現很多的嵌套,這樣一來我們會混淆個個對應的花括號!
1、分支語句
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
|
if
(
$age
>= 18 &&
$age
<= 30)
{
echo
'young man'
;
}
else
if
(
$age
> 30 &&
$age
<= 60)
{
echo
'middle aged'
;
}
else
{
echo
'old man'
;
}
//下面這段代碼高手我們一個問題,在if語句中,即使在可以不要花括號的情況下,花括號也是要寫上的
if
(
$age
> 60)
{
echo
'I am very old'
;
}
switch
(
$status
)
{
case
'forbiden'
:
echo
'login forbidden'
;
break
;
case
'normal'
:
echo
'login in'
;
break
;
default
:
echo
'status is wrong'
:
break
;
}
|
2、循環語句
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
while
(
$condition
)
{
statesments......;
}
foreach
(
$arrayList
as
$arrayKey
=>
$arrayItem
)
{
states......;
}
do
{
statements......;
}
while
(
$condition
)
for
(
$start
; condition; changenumber)
{
statements......;
}
|
總體需遵規則
開發的過程中,遵循以下規則,會讓你的開發變得更輕松:
- 遵循框架的命名規范和目錄規范;
- 開發過程中盡量開啟調試模式,及早發現問題;
- 養成使用I函數獲取輸入變量的好習慣;
- 更新或者環境改變后遇到問題首要問題是清空Runtime目錄;
