アップグレード
バージョン 3.x から 4.0 への移行
最低限必要なPHPバージョンは8.0です。
Nette\Utils\Reflection
クラスは、型を扱うためのメソッド
getParameterType()
、getPropertyType()
、getReturnType()
を提供していました。これらのメソッドは、PHPに共用体、交差型、または最新の選言標準形型がなかった時代に作成されたため、これらとは機能せず、Typeクラス
に置き換えられました。バージョン4.0以降、これらのメソッドは削除されました。
ネイティブの ReflectionParameter::getDefaultValue()
が正しく機能するようになったため、Nette\Utils\Reflection::getParameterDefaultValue()
メソッドは非推奨です。
変数 Nette\Utils\Html::$xhtml
は廃止されました。
Finder
Finderは nette/utils
パッケージに移動しました。元のパッケージを削除してください:
composer remove nette/finder
Linuxでは、新たに大文字小文字を区別するモードで動作します。
以前のバージョンでは、exclude()
と filter()
メソッドは、from()
または in()
の前に呼び出された場合と後に呼び出された場合で動作が異なりました。これはもはや当てはまりません。exclude()
と filter()
は常に同じように動作します。以前の 後に 呼び出された
filter()
は、新しいメソッド descentFilter()
に置き換えられました。
FinderはもはやCountableインターフェースを実装しません。
Finder::findFiles('/f*')
のスラッシュで始まる文字列は、新たに絶対パスと見なされます。例えば
Finder::findFiles('./f*')
に置き換える必要があります。
検索するディレクトリが存在しない場合、Nette\InvalidStateException
がスローされます(以前は UnexpectedValueException
)。