91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP代碼書寫規范

發布時間:2021-08-24 17:30:22 來源:億速云 閱讀:289 作者:chen 欄目:編程語言

本篇內容主要講解“PHP代碼書寫規范”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“PHP代碼書寫規范”吧!

基本規范

先說一下最基本的東西:

  • 變量名使用駝峰命名。不懂的單詞不要用拼音,而是要查詞典找到對應的單詞。

  • 常量命名使用大寫下劃線方式命名。如:SYSTEM_EROOR = 50000

  • 縮進使用Tab鍵,不要打一堆空格做縮進。

  • 類名首字母大寫駝峰命名,需要見名知其意,注釋說明這個類的功能。例如:

PHP代碼書寫規范

  • 方法名駝峰命名,方法行數盡量控制在80行左右,注釋說明函數干嘛用的。

PHP代碼書寫規范

  • 花括號獨占一行,例如:

PHP代碼書寫規范

  • foreach慎用引用,例如以下代碼會有問題:

PHP代碼書寫規范

預期結果是輸出: 2 4 6,實際結果是2 4 4, 至于為什么可 以看我之前的文章: PHP中&符號你真的了解嗎?。 可以使用array_walk`方法避免這個問題, 示例:

PHP代碼書寫規范

  • 避免if, elese嵌套過深,很多嵌套可以通過提前終止來消除, 舉個簡單的例子:

PHP代碼書寫規范

建議使用第二種方式,不符合條件的直接返回,剩下的就是符號條件的,那么避免了在if里面寫很多代碼。

  • 多個if/else使用switch來替代,PHP8.0版本可以使用match更為簡潔。

  • phpstorm中安裝SonarLint插件。如果你寫的代碼出現虛線,說明不太理想,那么可以根據提示修改,相信有強迫癥的同學一定會改,久而久之代碼就很規范了。例如:

PHP代碼書寫規范

方法未使用,方法名不規范已經告訴你了,可以快捷修改,也可以自己修改。

框架規范

  • 前面說得都是比較基礎的東西,接下來才是主要的內容。

  • 相信很多同學都用過常用的thinkphplaravelyii等流行框架之一。

  • 這些框架都是MVC架構的,看過很多人的代碼,要么把業務邏輯寫在控制器里面,要么寫在Model里面, 寫在Model里面相比寫控制器里面的還相對好一點。其實對于大型項目都不太友好。

  • 下文以Laravel框架為例。

參數驗證

  • API需要進行參數驗證,但是參數驗證寫在哪里比較優雅呢?可能很多人在controller定義規則,然后在調用驗證方法,那么驗證那段代碼將在每個API里面出現,例如我同事寫的。

PHP代碼書寫規范

  • 這段代碼在每個API里面均會出現一次,豈不是很啰嗦,那么如何解決呢?

PHP代碼書寫規范

  • 在Laravel的http目錄下建立一個Requsts目錄,用于存放請求的參數驗證類。建立一個BaseRequest類:

PHP代碼書寫規范

比如登錄需要參數驗證再建立一個LoginRequest類繼承這個BaseRequest

PHP代碼書寫規范

  • 使用的時候只要在Controller的方法中注入這個請求類即可。

PHP代碼書寫規范

這里獲取請求參數的時候會對表單進行驗證,否則參數驗證失敗會調用剛剛Request積累定義的方法拋Json異常,返回信息給客戶端。

控制器

控制器的主要工作負載獲取請求數據和返回內容,不應做更多的事情,那么可以定義一個Service層來處理業務邏輯。 所以我的控制器的代碼只有一行。

  • 在Laravel的app目錄下建立一個Services文件夾用于存放Service類,建立一個BaseService類:

PHP代碼書寫規范

然后建立一個UserService來處理用戶相關的業務邏輯。

PHP代碼書寫規范

在UserController中注入這個UserService使用:

PHP代碼書寫規范

Model

Model不建議寫業務邏輯。Model主要是用來定義一些內容,不應該操縱數據。

Model的數據操縱應該放在Repository中,在Laravel的app目錄下建立一個文件夾Repositories

定義BaseRepository:

PHP代碼書寫規范

定義UserRepository,用于用戶數據相關的操作, 在構造方法中注入UserModel:

PHP代碼書寫規范

常量

項目中很多常量該怎么定義?

在app目錄創建一個Constant目錄, 再建立一個Contstant類來保存這些自定義常量。

這樣的好處是:

  • 自定義常量可以集中的管理。

  • 修改常量值的時候,只需要在這個類中找修改一次即可,代碼更新維護性好。

PHP代碼書寫規范

到此,相信大家對“PHP代碼書寫規范”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

民和| 临高县| 德庆县| 杭锦后旗| 绥中县| 邯郸市| 广德县| 鹤山市| 郑州市| 锡林郭勒盟| 海淀区| 盐源县| 广昌县| 肃南| 济宁市| 文昌市| 康保县| 阳新县| 观塘区| 吉林市| 罗定市| 元氏县| 呼伦贝尔市| 新化县| 龙胜| 平泉县| 南投市| 铁岭市| 乡宁县| 多伦县| 扎兰屯市| 七台河市| 开封市| 额济纳旗| 鄯善县| 秦安县| 电白县| 兴化市| 平泉县| 广州市| 邢台县|