複数のリターンポイントを使用するのではなく、1つだけを使用する必要があるとよく言われます。
この関数を例にとってみましょう。
function data($item){
switch($item){
case 'one':
return 1;
case 'two':
return 2;
case 'three':
return 3;
case 'different_type':
return 'Something Different';
default:
return false;
}
}
どうやらこれを書くためのより良い方法は次のようになります。
function data($item){
$value = false;
switch($item){
case 'one':
$value = 1;
break;
case 'two':
$value = 2;
break;
case 'three':
$value = 3;
break;
case 'different_type':
$value = 'Something Different';
break;
default:
$value = false;
}
return $value;
}
どちらか一方の好みの問題ではない理由はありますか?
2つ目は、IDEが戻り値を示唆する型を作成する可能性が高いと思いますか?しかし、ここにもパフォーマンスの問題がありますか?