PHP は関数のオーバーロードをサポートしており、パラメーター リストが異なる場合に、複数の関数を同じ名前で定義できます。オーバーロードのルール: 関数名は同じ、関数のシグネチャ (パラメーター番号、順序、または型) は異なります。パラメーターは参照または値によって渡す必要があり、戻り値の型は異なっていてもかまいません。実際のケース: CalculateArea 関数は、さまざまなシグネチャを使用して正方形および長方形の面積計算を実装します。
PHP は関数のオーバーロードをサポートしており、同じ名前の複数の関数を定義できます。シグネチャ(パラメータリスト)が異なります。
PHP 関数のオーバーロードのルールは次のとおりです。
次の例は、関数のオーバーロードの実際的なアプリケーションを示しています。
<?php function calculateArea($width, $height = null) { if ($height === null) { // 正方形 return $width * $width; } else { // 矩形 return $width * $height; } } echo calculateArea(5); // 输出:25(正方形) echo calculateArea(5, 10); // 输出:50(矩形)
ここで、calculateArea
関数には 2 つの異なるシグネチャがあります。 :
calculateArea(int $width)
: 正方形の面積を計算するために使用されますcalculateArea(int $width, int $ height)
: 長方形の面積を計算するために使用されます これらの関数のシグネチャは異なるため、オーバーロードされる可能性があります。 $height
パラメータはオプションであり、渡されたパラメータの数に応じて異なる面積を計算できることに注意してください。
以上がPHP 関数はオーバーロードできますか?もしそうなら、そのルールは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。