ホームページ > バックエンド開発 > PHPチュートリアル > PHP のショートサーキット評価は不必要な関数呼び出しを防止しますか?

PHP のショートサーキット評価は不必要な関数呼び出しを防止しますか?

Linda Hamilton
リリース: 2024-12-04 13:14:10
オリジナル
538 人が閲覧しました

Does PHP's Short-Circuit Evaluation Prevent Unnecessary Function Calls?

PHP の短絡評価は不要な操作を最小限に抑えますか?

PHP には短絡評価と呼ばれるメカニズムがあり、終了することで評価を節約します。以前の状態が次の場合にさらにチェックします。 false.

次のコードを考えてみましょう:

if (is_valid($string) && up_to_length($string) && file_exists($file)) 
{
    ......
}
ログイン後にコピー

is_valid($string) が false と評価された場合、PHP は up_to_length($string) などの残りの条件のチェックを続行しますか?

PHP は、必要最小限の比較を実行することで遅延を示します。 is_valid($string) が false を返した場合、全体的な条件が既に false であると判断されているため、PHP は残りのチェックをスキップします。

これを説明するために、次の例を考えてみましょう。

function saySomething()
{
    echo 'hi!';
    return true;
}

if (false && saySomething())
{
    echo 'statement evaluated to true';
}
ログイン後にコピー

この場合、saySomething() 関数が「hi!」をエコーするように定義されているにもかかわらず、最初の条件 false が評価を省略し、インタープリタを妨げるため、この関数は呼び出されません。 2 番目の条件に到達するまで。

以上がPHP のショートサーキット評価は不必要な関数呼び出しを防止しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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