PCS開発チーム
デバッグを効率的に行うために、dd()
ではなくdump()
を使用し、その後にexit;
を追加せず続けてコードの実行を確認できるようにしましょう。これにより、途中の状態を確認しつつ、アプリケーションのフローを止めずに進められます。
laravel/framework v11.28.1
https://github.com/laravel/framework/releases/tag/v11.28.1
-
ViewMakeCommand
でトリムが無視される問題を修正。 - Windows環境で
PHP_CLI_SERVER_WORKERS
を無視。 - PHP 8.4の互換性を向上。
-
enum_value()
関数に渡される空の値の処理を修正。
livewire/livewire v3.5.12
https://github.com/livewire/livewire/releases/tag/v3.5.12
Alpineをバージョン3.14.3に更新しました。
livewire/livewire v3.5.11
https://github.com/livewire/livewire/releases/tag/v3.5.11
- ドキュメントの更新と誤字修正が行われました。
- Livewireイベントのディスパッチ例での文字列補間の誤りが修正されました。
- ESMソースマップが追加されました。
- ドキュメントで保護されたバリデーションメソッドが推奨されました。
- 各Livewireコンポーネントにポストモーフイベントが追加されました。
- レスポンスのコンテンツディスポジションヘッダーでファイル名がURLエンコードされるようになりました。
- S3セットアップのクリーンアップコマンドが失敗した際のエラーが表示されるようになりました。
- BaseUrlクラスでのPHP非推奨警告が修正されました。
- ページネーションの三点リーダースタイルが修正されました。
- 関数名の誤字が修正されました。
- レガシーモデルシンセでプロパティをブール値に設定できない問題が修正されました。
- ネストされたドット表記やワイルドカードを使用した際のreset()のバグが修正されました。
- ファイルアップロードの際にwebミドルウェアが存在しない場合のみマージされるようになりました。
laravel/jetstream v5.3.0
https://github.com/laravel/jetstream/releases/tag/v5.3.0
ResponsiveNavLinkコンポーネントで、Inertiaにおいてas=a
を使用可能にしました。
laravel/laravel v11.3.1
https://github.com/laravel/laravel/releases/tag/v11.3.1
Laravel v11.3.1のリリースでは、いくつかのバグ修正とパフォーマンスの改善が行われました。具体的には、セキュリティ関連の修正や、特定の機能における動作の安定性向上が含まれています。
laravel/laravel v11.3.0
https://github.com/laravel/laravel/releases/tag/v11.3.0
Tailwindを追加し、"composer run dev"を導入。
laravel/framework v11.28.0
https://github.com/laravel/framework/releases/tag/v11.28.0
- AuthorizableメソッドにBackedEnumのサポートを追加。
- PHP Redisのデフォルトカーソル値を
null
に設定。 - PHPDocの改善。
- substituteBindingsIntoRawSql()でリソースが正しくエスケープされない問題を修正。
- NumberファサードにdefaultLocaleとdefaultCurrencyのヘルパーを追加。
- 親リレーションがタイムスタンプを持たない場合のピボットタイムスタンプ列名の決定を修正。
- CollectionのisEmptyとisNotEmptyにphpstanアサーションを追加。
- 環境ファイルの暗号化と復号化を対話的に行う機能を追加。
- モデルで不要な場合にHasFactoryを削除。
-
Illuminate\Support\enum_value
を追加し、BackedEnum
やUnitEnum
をスカラーに解決。 - ネストされたコンポーネントの推測を許可。
- RouteParameter属性を導入。
- castBinding()でenum_value()を使用するようリファクタリング。
- テストの改善でコードの重複を削除。
- HasManyThrough::one()を修正。
- コンソールがLaravel Prompts 0.3+をサポート。
- モデルコマンドでフォルダパスを指定した際のファクトリのインポートパスの誤りを修正。
-
throw_if
とthrow_unless
の戻り値の型を実際の動作に合わせて改善。 - 配列を使用した
where
がブール値を尊重するように修正。 - 資格情報の検証時にnullパスワードを優雅に処理。
-
throw_*
ヘルパーの型絞り込み動作を復元。 - CollectedBy属性を追加。
-
ProcessPoolResults
に成功と失敗のメソッドを追加。 - foreignIdFor()の後にconstrained()メソッドを使用した際、$tableパラメータが渡されない場合にテーブル名ではなくカラム名を使用する問題を修正。
Laravelでは、php artisan tinker
コマンドを使用すると、アプリケーションの各種機能をインタラクティブにテストできます。これにより、モデルの動作確認などが簡単になります。
「IDEやエディターで表示されてるだけの警告メッセージ」と「コードの間違いによって発生した実行時のエラー」は区別する
これも最近よく見る質問のパターン。
Folioを知らないエディターからは未定義の$id
がいきなり使われてるように見えるってだけ。
<?php
dump($id);
?>
<div>
//
</div>
Folioではこれは正しいコードなので実際に実行すれば正しく動く。
「エディターがFolioに対応してないのが原因で出てる警告メッセージ」でしかないので気にする必要はないのに「自分のコードの間違い」と思い込んだ質問が最近多い。
こんなのはプログラミングの最初に身に付ける基礎でしかないので本当の根本的な原因は「PHPの基本も分かってない初心者がいきなりLaravel使ってるから」。結局全部ここに辿り着く。
https://laracasts.com/discuss/channels/laravel/folio-page-parameter-is-undefined-variable
livewire/livewire v3.5.10
https://github.com/livewire/livewire/releases/tag/v3.5.10
- テスト中のエラーを無視するように変更。
- wire:navigate呼び出し間でポップオーバーを保持するように変更。
php.newはLaravelによる提供
PHPやcomposerのインストール方法として急に登場。
// mac
/bin/bash -c "$(curl -fsSL https://php.new/install/mac)"
https://github.com/laravel/docs/commit/44f2375021852c0b1f0c9b6d3316436d3fc590d3
https://php.new/ だけ見てもPHP公式?としか思わないけどインストールスクリプトの中身を見るとhttps://download.herdphp.com
からphpやcomposerのバイナリを直接ダウンロードしている。
Laravel Herdのライト版みたいな扱いでLaravelに必要なバイナリだけをインストールしている。
# Define variables
BASE_URL="https://download.herdphp.com"
INSTALL_DIR="$HOME/.config/herd-lite/bin"
PHP_BIN="$INSTALL_DIR/php"
COMPOSER_BIN="$INSTALL_DIR/composer"
LARAVEL_BIN="$INSTALL_DIR/laravel"
PHP公式ではなくLaravel公式と分かってよく見直すと https://php.new/ はLaravel+Livewireで作られてる。
使うべき?
使わなくていい。Laravel公式とはいえ独自バイナリなんて使いたくないだろう。
node.jsはインストールされないので別途必要。
普通の使い方からも離れてる。
Macならbrew、WindowsならWSLを使う普通の使い方をしたほうがいい。
超初心者向けにPHPをインストールする部分からLaravel公式が提供してる形だけどLaravel入門よりも先がない。
追記
これを書いた数時間後には https://php.new/ が全面改修されてLaravelなことが明記された。
macならSpotlightを開いてTerminalを起動してペーストなんて手順まで丁寧に説明してるので本当に超初心者向け。
ここまで説明されなくても分かる人は使わなくていい。
laravel/framework v11.27.2
https://github.com/laravel/framework/releases/tag/v11.27.2
-
queue:work
コマンドのリグレッションを修正。 -
ServiceProvider::optimizes()
のパラメータ宣言を修正。
laravel/jetstream v5.2.1
https://github.com/laravel/jetstream/releases/tag/v5.2.1
- ロゴをダーク/ライトテーマに対応するよう更新。
-
Illuminate\Support\php_binary()
を利用。 - モデル内のファクトリードキュメントブロックの整理。
laravel/breeze v2.2.2
https://github.com/laravel/breeze/releases/tag/v2.2.2
- ロゴを更新し、ダーク/ライトテーマをサポート。
- マルチセレクトの使用方法を明確にするヒントを追加。
-
Illuminate\Support\php_binary()
を利用。 - 属性のためのBladeのエスケープ解除を削除。
- テキスト入力で@disabledを使用するように変更。
- デフォルト関数の名前をファイル名に合わせて更新。