laravel code style
單文件
<?php
namespace App\Modules\Blog\Action; use App\Http\Controllers\Controller; class CreateBlog extends Controller{ }1. namespace 上下空一行2. use 關鍵字上下空一行3. class 的 { 需換行4. class 的 } 後面需換行<?php if ($a === 1) { }5. if 跟 ( 間要有空格6. ) 跟 { 要有空格7. { 不需換行8. 比較符號左右都需有空格<?php class a { public function b() { } public function b() { } }9. 兩個 function 之間需要空一行<?php $a = 1;10. 變數跟 = 之間左右要空一個<?php for ($a = 1; $a < 10; ++$a) { }11. for 迴圈如上,使用++$a 取代 $a++<?php class Spinach extends Vegetable { public $cooked = false; public function __construct() { parent::__construct(true, 'green'); } public function cook_it() { $this->cooked = true; } public function generateRandomString($length = 10) { $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; $charactersLength = strlen($characters); $randomString = ''; for ($i = 0; $i < $length; ++$i) { $randomString .= $characters[rand(0, $charactersLength - 1)]; } return $randomString; } }12. code block 之間只能空一行13. 運算符前後需要空一格,14. ,號前後需要空一格api15. 採用restful api16. 基礎5種 apipost api/blogsget api/blogs/{blogId}get api/blogs // 設定成會需要paginationput api/blogs/{blogId}delete api/blogs/{blogId}若不需pagination命名成 api/all-blogs17. 詞性action 為動詞function 為動詞interface 為名詞或是形容詞(動詞轉形容詞)屬性為名詞變數為名詞class為名詞命名皆為駝峰18. repository基本操作getAllget // 默認抓idupdate // 默認使用idcreatedeletesearch // 條件篩選 可分頁或不分paginate // 分頁傳進去的參數只能是基本數值跟array19. interface不加 I 或是 interface,相對的實作字尾加 impl20. 使用 collect 取代 array21. 不得使用魔術數字22. service class 只能是名詞23. 太長的行要分行24. 基本架構層actionrequestservicedata processing 將dto轉成repo的資料repo
留言
張貼留言