如下信息是根據我的習慣進行整理,有什麼不正確的地方,還請各位大牛指教php
1.前端要進行基礎的驗證前端
一些很簡單的基礎驗證要先在前端完成,例如輸入框不容許爲空,最基礎的不爲空的驗證要在前端完成,當符合條件後再去請求服務器驗證(ps:這裏並非說,後端不須要驗證是否爲空,後端驗證也是必要的);這樣的好處是把基礎驗證放在客戶端完成,減小服務器的壓力數據庫
2.在後端驗證中,要先驗證後查數據庫(或者先驗證條件是否成立,再進行下一步)後端
若是你要查詢數據庫,那就先判斷你的不須要查詢數據庫的條件都是否已經成立了,下面是錯誤案例:服務器
錯誤:函數
問題很明顯,上圖中先調用了checkFullNameUniqueness進行了公司名稱是否惟一的查詢,而後才調用check_company_type_currency進行企業名稱規範的驗證;這顯然是不正確的,雖然在代碼執行上沒有錯誤,可是很明顯在企業名稱不符合規範的時候多查了一次數據庫(這裏還有checkFullNameUniqueness和check_company_type_currency函數命名規範不統一的問題 notice:上面的代碼還有一個問題,你注意到了嗎?哈哈,留下懸念,日後看)ip
改善:字符串
案例二 先驗證條件是否成立,再進行下一步it
錯誤:基礎
問題分析:上面進行下一步查詢的時候沒有判斷$order_info['inviter_id']是爲空,就進行了下一步
改善:
tip:上面的notice解釋,這個問題跟我的的代碼習慣有關:
關於這段
你說這樣寫會不會更好呢?
3.關於雙引號和單引號的問題
在php中「」裏的內容會有是不是變量的判斷,因此若是隻是單純的字符串請放入‘’中