English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
このチュートリアルでは、PHPのif ... else ... elseif文を使用して決定コードを書く方法を学びます。
ほとんどのプログラミング言語と同様に、PHPは、ランタイム中に論理または比較テスト条件の結果に基づいて異なる操作を実行するコードを書くことを許可しています。これは、trueまたはfalseとなる計算結果の表現式を作成し、これらの結果に基づいて特定の操作を実行できることを意味します。
PHPには決定を制定するために使用できるいくつかの文があります。
if 文
if ... else 文
if...elseif..else 文
switch...case 文
次の部分で各文について説明します。
指定された条件の値がtrueの場合にのみ、if文はコードブロックを実行するために使用されます。これは最もシンプルなPHP条件文で、このように書くことができます:
if(condition){ //実行するコード }
以下の例では「週末お楽しみください!」が表示されます。今日が金曜日の場合:
<?php $d = date("D"); if($d == "Fri"){ echo "週末、楽しい一日をお過ごしください!"; } ?>テストを見て‹/›
if文にelse文を追加することで、代替選択を提供し、決定プロセスを強化できます。指定された条件の条件がTrueの場合、if ... else文は、条件がFalseの場合に別のブロックのコードを実行できるようにします。このように書くことができます:
if(condition){ //条件がtrueの場合に実行されるコード } else { //条件がfalseの場合に実行されるコード }
以下の例では「週末お楽しみください!」が表示されます。現在の日付が金曜日の場合、それが表示されます「お楽しみください!」
<?php $d = date("D"); if($d == "Fri"){ echo "週末、楽しい一日をお過ごしください!"; } else{ echo "楽しい一日をお過ごしください!"; } ?>テストを見て‹/›
if ... elseif ... else特別な文は、複数のif ... else文を組み合わせるために使用されます。
if(condition1){ //if(condition)1がtrueの場合に実行されるコード } elseif(condition2){ //if(condition)1がfalseでcondition2がtrueの場合に実行されるコード } else { //if(condition)1およびcondition2どちらの条件も実行されるコードは誤りです。 }
以下の例では「週末お楽しみください!」が表示されます。現在の日付が金曜日の場合、および「祝日お楽しみください!」現在の日付が日曜日の場合、それ以外は「お楽しみください!」が表示されます。
<?php $d = date("D"); if($d == "Fri"){ echo "週末、楽しい一日をお過ごしください!"; } elseif($d == "Sun"){ echo "日曜日、楽しい一日をお過ごしください!"; } else{ echo "楽しい一日をお過ごしください!"; } ?>テストを見て‹/›
では次章中、PHPのswitch文について学びます。-の情報について学びます。
三元演算子はif...else文を簡単に書く方法を提供します。三元演算子は三つの操作数を持つ問号(?)で表され、それらは以下の通りです:チェックする条件、条件が真の場合の結果、条件が偽の場合の結果。
この演算子の動作を理解するために、以下の例を見てください:
<?php $age = 15; if($age < 18){ echo '子供'; //年齢が小さい場合18歳、子供を表示 } else{ echo '成人'; //年齢が大きい場合18歳、成人を表示 } ?>テストを見て‹/›
三元演算子を使用すると、以下のように同じコードをよりコンパクトに書くことができます:
<?php $age = 15; echo ($age < 18) ? '子供' : '成人'; ?>テストを見て‹/›
上記の三元演算子が条件の計算結果がtrue($ageが小さい場合)18),則はカラムの左側の値(「子供」)を選択します。条件の計算結果がfalseの場合は、カラムの右側の値(「成人」)を選択します。
ヒント:三元演算子で書かれたコードは読みにくいかもしれませんが、if文をコンパクトに書く方法を提供します。-else文の良い方法です。
PHP 7新しい空合算演算子(??)を導入しました。これは三元演算子とisset()関数を組み合わせた短縮形として使用できます。
この点をよりよく理解するために、以下のコード行を見てください。それは$_GET['name']の値を取得し、それが存在しないかNULLの場合は'anonymous'を返します。
<?php //三元演算子(?:)を使用 $name = isset($_GET['name']) ? $_GET['name'] : 'anonymous'; echo $name; ?>テストを見て‹/›
空合算演算子を使用すると、以下のように同じコードを書くことができます:
<?php //空合算演算子(??)を使用 $name = $_GET['name'] ?? 'anonymous'; echo $name; ?>テストを見て‹/›
ご覧の通り、後の文法はよりコンパクトで書きやすいです。