使用 Docker 把自己的 Laravel 專案容器化
最近我正在學習如何使用容器管理平台 K8s,過程中深刻體會到容器化所帶來的許多好處。舉例來說,它可以更好地實現水平擴展,同時在更新服務時,可以使用滾動更新 (rolling update) 的方式,讓服務不間斷。因此某一天...
程式技術
•
sharkHead
•
7個月前
•
14
如何在 PHP 中測試 Trait
在使用 Laravel Livewire 的時候,我時常會把 livewire component 中可以重複使用的邏輯或是方法抽出並放在 Trait 中。Laravel Livewire 官方文件中也建議使用 Trait 來處理經常重複使用的邏輯。詳細可以參考下面兩...
程式技術
•
sharkHead
•
10個月前
•
1
使用 Laravel 團隊的 Coding Style,簡單介紹 Laravel Pint
之前我有分享過一篇文章簡單介紹 PHP CS Fixer,開發團隊可以使用 PHP CS Fixer 來統一團隊的 coding style,而 PHP CS Fixer 預設會使用 PHP-FIG 提出的 PSR-12 來當作整理 coding style 的依據。但其實每個團隊可...
程式技術
•
sharkHead
•
10個月前
•
0
簡單介紹 PHP 測試框架 Pest (下)
繼上回簡單介紹 PHP 測試框架 - Pest (上) 後,讓我們緊接著繼續看看 Pest 的其他實用功能。使用 Datasets 測試多組資料如果你想要在一個流程測試中,測試多筆資料,你會怎麼做呢?雖然我們可以把測試拆開,為每筆資...
程式技術
•
sharkHead
•
10個月前
•
0
簡單介紹 PHP 測試框架 - Pest (上)
Pest 是由 Laravel 團隊中 Nuno Maduro 所開發的 PHP 測試框架,是建構於 PHPUnit 上再包裝版本,除了完全兼容 PHPUnit,Pest 還提供更多優雅且實用的測試方法。前陣子發現 Laracasts 上原來有 Pest From Scatch 的...
程式技術
•
sharkHead
•
11個月前
•
1
簡單介紹 PHP 的生成器 (Generators)
PHP 的生成器 (Generators) 提供了一個簡單的方式去實現迭代器 (Iterrators)。如官方文件所說:A generator allows you to write code that uses foreach to iterate over a set of data without needing to build a...
程式技術
•
sharkHead
•
1年前
•
0
PHP 中的 ...$args,這個 ... 是什麼?
你可能在 PHP 中看過 ...$args 的程式碼,這個 ... 又稱為參數拆包 (arguments unpacking, AKA spread operator),是在 PHP 5.6 加入的功能。... 可以將一個陣列中的參數拆開來並放到新的陣列中。$foo = [1, 2, 3];...
程式技術
•
sharkHead
•
1年前
•
0
簡單介紹 Laravel 的服務容器
Laravel 提供一種名為服務容器(Service Container)的工具,用來管理類與類之間的依賴與依賴注入。但在介紹服務容器之前,先來介紹一下什麼是依賴?什麼是依賴注入?什麼是依賴?如果一個A類中的方法需要使用到B...
程式技術
•
sharkHead
•
1年前
•
0
檢查與修正團隊的 Code Style,簡單介紹 PHP CS Fixer
每位碼農的人生成長歷程不盡相同,因此在 Coding 上可能都會有各自的習慣或是風格。在團隊協作開發的時候,不同的 Coding 風格可能會給團隊造成一些困擾,例如:有人喜歡用 4 個空格排版,但有人覺得 2 個空格才剛好...
程式技術
•
sharkHead
•
1年前
•
0
簡單介紹 PHP 8.1 的列舉 (Enumerations)
PHP 8.1 在前陣子正式推出!加入不少新功能,其中包含最多人期待的列舉 (Enumerations)。列舉可以用來定義一系列的常數設定值,避免在開發時使用無效的設定值。簡單的 enum 設定如下。// 沒有回退 (non-backed) 的 e...
程式技術
•
sharkHead
•
1年前
•
0