5

このトピックがここで簡単に取り上げられたことは理解してますが、PHP で複数の戻り値の型を使用する場合の一般的な注意事項と注意事項を理解したいと考えています。この PHP の機能については、さまざまな意見があるようです。

上記のリンクのスレッドで指摘されているように、エラーの場合、例外を使用する方がおそらくより適していることに同意する傾向があります。しかし、たとえば 2 種類の意味のある値を返す関数はどうでしょうか。たとえば、家の中でオフになっているすべてのライトを返す関数を考えてみましょう (:) はい、私は翼を広げています!)

本質的に、これが私が伝えたいことです: 基本的な条件が満たされておらず、先に進んでリストを計算する意味がわからない場合は、ブール値を返します。それ以外の場合は、次のようにします。

    public function getLightsThatAreOff($house) 
    {
        // if $house itself does not have any power, return true 
        // else 
              //compile an array of lights that are off and return then
    }

上記のユースケースは、複数の戻り値の型の一種のスイートスポットだと思います。どちらの場合でも、この機能を使用するかどうかを判断する方法に関する一般的なガイドラインを誰かが提供してくれれば幸いです。

ありがとう!

4

2 に答える 2

9

よく文書化されていても、混合型は良くありません。たとえば、メソッドが配列を返しているが、返すものが何もない場合、それは false などではなく、空の配列である必要があります。すなわち

array()
于 2013-04-30T06:23:02.497 に答える