If Statement
CoddyのPHPジャーニー「基礎」セクションの一部 — レッスン 28/71。
ブール式の作成方法がわかったところで、それらを使って条件に応じてコードに異なる動作をさせる時が来ました。if 文は、条件が true の場合にのみコードを実行します。
基本的な構文は、条件を括弧で囲み、その後に実行するコードを含む中括弧を続けます:
<?php
$age = 20;
if ($age >= 18) {
echo "You are an adult";
}
?>PHP が if 文に遭遇すると、条件を評価します。結果が true の場合、中括弧内のコードが実行されます。false の場合、PHP はそのブロックを完全にスキップし、プログラムの残りの部分に続きます。
<?php
$temperature = 35;
if ($temperature > 30) {
echo "It's hot outside!";
}
echo " Have a nice day!";
?>この例では、条件が true であるため、両方のメッセージが表示されます。もし $temperature が 25 だった場合、if ブロックがスキップされるため、"Have a nice day!" のみが印刷されます。
すでに学習した比較演算子と論理演算子を含む、任意のブール式を条件として使用できます。
チャレンジ
簡単入力から2つの整数を読み取ってください:speed と speedLimit。
if文を使用して、ドライバーが速度超過しているかどうかを確認してください。speed が speedLimit を超えている場合、Speeding ticket issued を出力します。
if文の後(条件が真か偽かに関わらず)、常に新しい行に Drive safely! を出力してください。
例:
入力が 75 と 60 の場合、出力は次のようになります:
Speeding ticket issued
Drive safely!入力が 55 と 60 の場合、出力は次のようになります:
Drive safely!チートシート
if 文 は、条件が true の場合にのみコードを実行します。
基本的な構文:
<?php
if ($age >= 18) {
echo "You are an adult";
}
?>PHP は括弧内の条件を評価します。true の場合、中かっこ内のコードが実行されます。false の場合、そのブロックはスキップされます。
<?php
$temperature = 35;
if ($temperature > 30) {
echo "It's hot outside!";
}
echo " Have a nice day!";
?>条件には、比較演算子や論理演算子を含む任意のブール式を使用できます。
自分で試してみよう
<?php
// 入力を読み取る
$speed = intval(fgets(STDIN));
$speedLimit = intval(fgets(STDIN));
// TODO: 下にコードを書いてください
// speed が speedLimit より大きいかチェックし、適切なメッセージを出力
?>このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
基礎のすべてのレッスン
4Comparison & Logical Operators
Comparison OperatorsEquality & IdentityLogical Operators Part 1Logical Operators Part 2Recap - Simple Logic2Variables and Data Types
NumbersStrings and QuotesBooleansNaming ConventionsRecap - Variable InitEmpty VariablesString ConcatenationGetting User InputCast to Different Types5Conditional Logic
If StatementIf - ElseThe Ternary OperatorNull Coalescing OperatorSwitch StatementRecap - Making Decisions3Basic Operators
Arithmetic OperatorsModulo OperatorExponentiation OperatorCombined AssignmentIncrement/DecrementOperator PrecedenceRecap - Simple CalculationsString Operators