PHP 関数におけるデフォルト引数の高度な使用法
PHP では、デフォルト引数により関数に柔軟性が与えられ、開発者はパラメータのフォールバック値を定義できます。ただし、複数のデフォルト引数を扱う場合、他の引数のデフォルト値を保持しながら特定の引数を選択的にオーバーライドすることは混乱を招く可能性があります。
質問:
デフォルトの引数を持つ関数:
<code class="php">function foo($blah, $x = "some value", $y = "some other value") { // code here! }</code>
$x にはデフォルトの引数を使用し、$y には別の値を設定するにはどうすればよいですか?
解決策:
これを実現する鍵は、関数宣言を変更することです:
<code class="php">function foo($blah, $x = null, $y = null) { if (null === $x) { $x = "some value"; } if (null === $y) { $y = "some other value"; } code here! }</code>
この調整により、次のように関数を呼び出すことができます:
<code class="php">foo('blah', null, 'non-default y value');</code>
この場合、$xはデフォルト値を保持しますが、$y は指定されたデフォルト以外の値で上書きされます。
追加の考慮事項:
<code class="php">public function __construct($params = null) { // code here! }</code>
以上がPHP 関数の特定のデフォルト引数をオーバーライドするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。