三項演算子は、すべての論理演算子、算術演算子、比較演算子と似ています。これは、いくつかの条件をチェックし、それに応じてジョブを実行するのに役立つ条件演算子です。三項演算子はコードの長さを減らします。三項演算子を使用すると、すべての条件と比較を簡単に確認できます。これは、条件チェックに通常使用される従来の if-else 演算子の代替です。この演算子の動作順序は左から右です。ユーザーが時間を節約する必要がある場合、これは非常に良いオプションです。このトピックでは、PHP の三項演算子について学びます。
無料ソフトウェア開発コースを始めましょう
Web 開発、プログラミング言語、ソフトウェア テスト、その他
三項演算子を使用する理由は、if-else ステートメントを簡素化するためです。変数の代入に使用できます。この演算子を使用するもう 1 つの理由は、ユーザーが検証後にデータを割り当てたり、フォームを検証したりする場合です。三項演算子も理解しやすく、使いやすいです。また、時間を節約し、現在の条件で無効な値に遭遇した場合に通知を作成します。
構文
三項演算子には 3 つのオペランドがあるため、その名前が付けられています。これら 3 つのオペランドは、条件、条件が true の場合の結果、および結果が false の場合の 3 番目のオペランドを表します。同じ構文は以下のとおりです:
Condition? Statement 1: Statement2
上記の構文は次のように説明できます。三項演算子は、if-else ステートメントと同じように機能します。ここでの条件は if 条件であり、検証およびチェックの対象となります。これは、true または false のいずれかのブール値を返します。この条件が真の場合、ステートメント 1 が実行されます。ステートメント 1 が true でない場合は、if else ステートメント 2 の else 条件と同様に実行されます。
三項演算子の働きをより深く理解できるように、いくつかの例を見てみましょう。
これは三項演算子の簡単な例です
コード:
<?php $age=19; print ($age>=18) ? "You can vote": "You are not eligible to vote"; ?>
これは、三項演算子の動作を理解できる最も簡単な例です。ここで、変数 $age には候補者の年齢が格納されます。彼らは候補者に投票資格があるかどうかを検証している。コードの寿命は 1 つだけです。この状態はチェック中です。年齢が 18 歳以上であれば「投票できる」ことが検証されます。それ以外の場合は、「あなたには投票する資格がありません。」
出力:
次に、その逆の、年齢が 18 歳未満の場合を確認してみましょう。この場合、コードは次のようになります。
コード:
<?php $age=15; print ($age>=18) ? "You can vote": "You are not eligible to vote"; ?>
この例では、結果としてステートメント 2 を取得します。状態を評価させていただきます。ここでの age 変数の値は 18 未満です。三項演算子の条件が満たされていません。したがって、「あなたには投票する資格がありません。」という出力が表示されます。
出力:
短縮三項演算子を利用することもできます。左側の演算子を削除して、さらに短い式を作成できます。
これは次のように表現できます:
$result = $initial ?: 'default';
この式の仕組みは、初期値が false と評価されなくなるまで、条件が実行されるということです。条件が false と評価されると、デフォルト値が使用されます。これは、以下のように通常の三項演算子を利用して使用することもできます:
$result = $condition ? $condition : 'default';
これをテストするために、例を見てみましょう
コード:
<?php $num=5; $num1=6; $num2=10;print ($num > $num1) ? ($num > $num2) : 'Num2 is largest'; ?>
このコードは、指定された両方の条件をチェックします。まず、$num が $num1 より大きいかどうかを確認します。ここで、この条件は偽です。その後、次の条件に移ります。この条件は、$num が $num2 より大きいかどうかをチェックします。 5 が 10 以下であるため、この条件も false を返します。ここでのデフォルト値は、最大の Num2 に設定されます。 2 番目の条件も true ではないため、出力としてデフォルト値が選択されます。したがって、ここでの出力は「Num2 が最大です」となります。
出力:
コード:
<?php $score = 10; $age = 20; print ($age > 10 ? ($score < 80 ? 'behind' : 'above average') : ($score < 50 ? 'behind' : 'above average')); // returns 'You are behind' ?>
Consider two variables, one for score and one for age, and use a ternary operator. Here it will check if the age is greater than 10 and the score is less than 80; then, the output will be behind. Else the output will be above average. Similarly, we are checking another example where the age is greater than 10, but the score is less than 50. Then also the output will be behind, else it will be above average. The output of the above code will be: Considering your age and score; you are: behind.
Output:
Below are a few of the advantages explained.
The ternary operator may look different from other operators and may also confuse you a bit initially. But once you know how to use it, you can easily use and master it. It will make your code look more manageable and easy to understand.
以上がPHPの三項演算子の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。