ホームページ > バックエンド開発 > PHPの問題 > PHPで三項演算子を使う方法

PHPで三項演算子を使う方法

青灯夜游
リリース: 2023-03-12 20:54:01
オリジナル
5621 人が閲覧しました

PHP では、三項演算子を使用して、最初の式の結果に基づいて他の 2 つの式の 1 つを選択して実行します (構文 "(expr1)?(expr2):(expr3); ";最初の式「expr1」が true の場合、2 番目の式「expr2」が実行され、それ以外の場合は「expr3」式が実行されます。

PHPで三項演算子を使う方法

このチュートリアルの動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 コンピューター

PHP では三項算術演算子は、他の 2 つの式のいずれかを選択し、最初の式の結果に基づいて実行するという単純な条件判定関数を実装できます。三項演算子は、三項演算子または条件演算子とも呼ばれます。

三項演算子の機能は「if else」ステートメントと一致しており、1 行で記述できるため、コードが簡潔かつ効率的になります。 PHP プログラムで三項演算子を適切に使用すると、スクリプトをより簡潔かつ効率的に作成できます。

三項演算子の構文形式は次のとおりです。

(expr1)?(expr2):(expr3); //表达式1?表达式2:表达式3
ログイン後にコピー

条件 "expr1" が true の場合はステートメント "expr2" を実行し、それ以外の場合はステートメント "expr3" を実行します。

サンプル コードは次のとおりです。

<?php
    $a = 10;
    $a % 2 == 0 ? print &#39;$a 是偶数!&#39; : print &#39;$a 是奇数!&#39;;
?>
ログイン後にコピー

実行結果は次のとおりです。

$a 是偶数!
ログイン後にコピー

また、expr2 と expr3 は一重引用符 ('') を使用して省略することもできます。 ) または二重引用符 ("") 不要なコードを避けるため、以下に示すようにいずれか 1 つを使用します。

<?php
    $a = 10;
    $b = 7;
    $a % 2 == 0 ? print &#39;$a 是偶数!<br>&#39; : "";
    $b % 2 == 0 ? &#39;&#39; : print &#39;$b 是奇数!&#39;;
?>
ログイン後にコピー

実行結果は次のとおりです。

$a 是偶数!
$b 是奇数!
ログイン後にコピー

注: 三項演算子を使用する場合、文字列を出力する必要がある場合は、echo ステートメントの代わりに print ステートメントを使用することをお勧めします。

三項演算子は拡張的に使用することもでき、設定した条件が真か否かに応じて複数の文で実行することもできます。構文形式は次のとおりです。

(expr1) ? (expr2).(expr3) : (expr4).(expr5);
ログイン後にコピー

ご覧のとおり、文字列演算子「.」を使用して複数の実行ステートメントを接続でき、各実行ステートメントは独立した完全な実行ステートメントであることを示すためにかっこで囲まれています。

同時に、三項演算子をネストして使用することもできます。例は次のとおりです:

<?php
    $a = 10;
    $b = 6;
    $c = 12;
    $x = $a>$b ? ($a<$c ? $c-$a : $a-$c) : ($b<$c ? $c-$b : $b-$c);
    echo &#39;$x =&#39;.$x;
?>
ログイン後にコピー

5 行目の代入演算は、三項演算子が代入されるまで待機することに注意してください。実行される前に実行されます。

実行結果は次のとおりです。

$x =2
ログイン後にコピー

ネストされた三項演算子は多くのコードを節約できますが、可読性はあまり良くなく、コードを保守するのにも非常に不便です。この場合、これを達成するために if else ステートメントを使用しようとします。

推奨学習: 「PHP ビデオ チュートリアル

以上がPHPで三項演算子を使う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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