Laravel 11 什麼是 Tinker 以及如何使用它
Tinker 是直接整合到 Laravel 的互動式 PHP REPL(讀取-評估-列印循環)。
Tinker 允許開發人員與整個 Laravel 應用程式動態互動。
在本文中,我們將加深對如何有效使用它的了解 Laravel 修補匠,從配置到進階使用場景。
預計閱讀時間: 4 minuti
Laravel Tinker 是什麼?
Laravel Tinker 提供了一個互動式命令列介面,您可以直接使用 PHP 程式碼來操作 Laravel 應用程式的資料。基於強大的包 心理SH,該工具是一個運行時開發人員控制台和互動式偵錯器。 Tinker 讓您可以輕鬆試驗和偵錯應用程序,而無需重複的手動測試或臨時路徑。
修補匠配置
Tinker 預先安裝了 Laravel 11。首先,前往 Laravel 專案目錄並執行以下命令:
php artisan tinker
此命令啟動 Tinker 環境,讓您可以直接與應用程式的 PHP 程式碼互動。
使用修補匠
Tinker 啟動後,您就可以開始輸入 PHP 程式碼來與 Laravel 應用程式互動。以下是您可以執行的一些基本命令和任務:
評估基本 PHP 表達式:
> 4 * 6
= 24
建立和操作模型:
以下說明建立一個使用者實例,填寫名稱欄位並將使用者記錄作為新記錄儲存在資料庫中:
> $user = new App\Models\User(['name' => 'Blog Innovazione']);
> $user->save();
使用 Eloquent 進行資料復原:
以下語句開始搜尋名稱欄位等於「創新部落格」的第一筆記錄:
> App\Models\User::where('name', 'Blog Innovazione')->first();
更多修補匠功能
與雄辯互動
Tinker允許多種管理操作 數據庫 通過雄辯。您可以執行複雜的查詢、建立、更新和刪除記錄:
> $user = App\Models\User::find(1);
> $user->email = 'bloginnovazione@bloginnovazione.it';
> $user->save();
收集和修改
操作集合並測試集合方法而不影響 數據庫:
> $collection = collect([1, 2, 3]);
> $collection->push(4);
> $collection->all();
= [1, 2, 3, 4]
事件和工作測試
在 Tinker 中觸發事件和進程以查看應用程式如何即時回應:
> event(new App\Events\UserRegistered($user));
> dispatch(new App\Jobs\SendWelcomeEmail($user));
工廠修補匠
生成後 的模型 Factory
, 我們可以用 Factory Tinker
產生虛假數據。我們在專案目錄中開啟一個終端機視窗並執行以下命令:
php artisan tinker
此命令將開啟 Laravel Tinker REPL(讀取-評估-列印循環),讓您可以從命令列與 Laravel 應用程式互動。
數據生成
要使用 Factory Tinker 產生假數據,只需呼叫該方法 factory()
我們指定範本和要建立的記錄數。例如,建立十個假記錄 User
,我們在 Tinker REPL 中執行以下命令:
factory(App\Models\User::class, 10)->create();
該命令將創建十個假記錄 User
在 數據庫 使用中定義的屬性 factory model
UserFactory
.
實用提示和技巧
- 可變持久性: Tinker 不維護會話之間的狀態。如果您需要持久更改,請務必將它們儲存到您的 數據庫 或在另一個永久檔案中。
- 避免生產使用: 雖然使用 Tinker 即時操作資料很誘人,但這樣做可能會導致意想不到的後果。始終在本機或臨時環境中使用 Tinker。
- 語法錯誤: Tinker 將提供語法錯誤的即時回饋。確保仔細遵循 PHP 語法。
- 未找到類別: 確保您的類別具有正確的命名空間並且您使用的是正確的名稱。
- 異常處理: Tinker 顯示程式碼拋出的例外。使用這些訊息進行即時調試和故障排除。
Laravel Tinker 是一個強大的工具,可顯著提高您的工作效率和對 Laravel 應用程式的理解。透過命令列提供到應用程式後端的直接線路,Tinker 允許在 Laravel 中立即互動和測試元件。無論您是在調試還是嘗試新功能,Tinker 都是 Laravel 開發工具包中的多功能伴侶。
相關閱讀
Ercole Palmeri