ホームページ > バックエンド開発 > PHPチュートリアル > オプションのパラメータの後に必須パラメータがあると、PHP 非推奨の警告が表示されるのはなぜですか?

オプションのパラメータの後に必須パラメータがあると、PHP 非推奨の警告が表示されるのはなぜですか?

Barbara Streisand
リリース: 2024-12-05 19:17:15
オリジナル
696 人が閲覧しました

Why Do Required Parameters After Optional Parameters Cause PHP Deprecation Warnings?

PHP 非推奨に関する通知: オプションのパラメーターに続く必須パラメーター

PHP 8.0 以降、次の宣言パターンを持つ関数を使用すると、非推奨の警告が表示されることがあります:

function test_function(int $var1 = 2, int $var2) {
    // ...
}
ログイン後にコピー

このエラー メッセージは、必須パラメータ (この例では $var2) がオプションのパラメータの後に続く場合にトリガーされます($var1).

なぜ非推奨になったのですか?

これまで、この構文には欠陥があり、関数呼び出しではすべてのパラメーター (最後に必要なパラメーターまで) を指定する必要がありました。それらにはデフォルト値がありました。さらに、これは関数分析のための ReflectionFunctionAbstract クラスの使用を妨げていました。

推奨される解決策

非推奨の警告を排除するには、関数宣言を調整して以前のパラメーターのデフォルト値を削除します。これらのパラメータは常に必須であるため、その機能は影響を受けません。

function test_function(int $var1, int $var2) {
    // ...
}
ログイン後にコピー

以上がオプションのパラメータの後に必須パラメータがあると、PHP 非推奨の警告が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート