概要
PHPの独学で学んだことをアウトプットしていく
前回の内容
[PHP基礎 Part2]
[PHP基礎 Part2]:https://qiita.com/k__aizawa/items/7bce8c8f0c88e0ca6d92
if文
「もし○○の場合、△△となる」といった条件に応じて、分岐が必要な場合に用いる文法
条件成立時は、{}の中の処理が実行される
<?php
$num = 3;
if ($num > 0){ // 条件式の展開
echo "変数numは0より大きい"; // 条件を満たす場合、出力される
}
// 結果:変数numは0より大きい
?>
比較演算子
比較元の値と比較先の値を、比較する為に以下の__比較演算子__を用いて判定する
判定時の結果が真の場合は、「true」で偽の場合は「false」と表す
比較演算子 | 判定基準 |
---|---|
< | 右辺が大きい時にTrue |
<= | 右辺が大きい時、もしくは等しい時にTrue |
> | 左辺が大きい時にTrue |
>= | 左辺が大きい時、もしくは等しい時にTrue |
== | 右辺と左辺が等しい時にTrue |
!= | 右辺と左辺が等しくない時にTrue |
=== | データ型まで含め、右辺と左辺が等しい時にTrue |
!== | データ型まで含め、右辺と左辺が等しくない時にTrue |
else
「もし○○の場合、△△となり、そうでない場合は□□となる」といった、
if文との組み合わせで条件分岐を作成する
elseを使うことで、if文で条件を満たせなかった場合の処理を実行させることが可能
<?php
$age = 19;
if ($age >= 20){ // 条件式の展開
echo "あなたは成年です"; // $age = 19なので、条件に合致しない
}else{
echo "あなたは未成年です"; // else文の処理実行
}
// 結果:あなたは未成年です
?>
elseif
「もし○○の場合、△△となり、◇◇の場合は☓☓となり、そうでない場合は□□となる」といった、
条件の分岐が3つ以上になる時に使用可能
注意点として、複数条件に合致した場合は、先に条件が合致した分岐の処理を行う
<?php
$num = 23;
if ($num > 30){ // 条件式の展開
echo "30より大きい数値"; // $num = 23なので、条件に合致しない
}elseif ($num >= 20){
echo "20以上30以下の数値"; // 条件に合致するので、この分岐の処理が実行
}else{
echo "20以下の数値"; // elseifで合致する条件があった為、実行されない
}
// 結果:20以上30以下の数値
?>
複数条件の組み合わせ
条件式を展開する際に、複数の条件を一纏めにしたい場合に__論理演算子__を使用する
andを表す論理演算子は__「&&」、orを表す演算子は「||」__となる
<?php
$age = 30;
if ($age >= 25 && $age <= 30){ // 条件式の展開
echo "アラサーです"; // 条件に合致する為、この分岐の処理が実行
}else{
echo "それ以外の世代です";
}
// 結果:アラサーです
?>
switch文
if文では複雑になるような条件をswitch文を使い、読みやすいようにする
if文とは異なり、switchという条件式を展開し、条件式に当てはまるcaseの値が合致した時に、
該当するcaseの処理が実行される
もし、どのcaseにも当てはまらない場合は、defaultの処理が実行される
<?php
$score = 4;
switch ($score){
case 1:
echo "E判定";
break;
case 2:
echo "D判定";
break;
case 3:
echo "C判定";
break;
case 4:
echo "B判定"; //$score = 4の為、このcaseの処理が実行される
break;
case 5:
echo "A判定";
break;
default:
echo "判定外";
break;
}
// 結果:B判定
?>
【補足】
各caseの末尾にbreakを記述しているが、
これがないと、caseに合致する条件のすぐ後ろのcaseも実行されてしまう為、
breakが入っているかを確認すること
次回
- 配列
- 連想配列