if構文のコロン記法

if構文をHTML内で記述する際は、{ } の代わりに : や endif; を使用した記法が利用されるのが一般的です。
以下は入力された年齢をもとに表示させるコンテンツを切り分ける記述例です。

<?php
$age = $_POST["age"];
?>
<html>
<head>
   <meta charset="UTF-8">
</head>
<body>
   <?php if($age < 0): ?>
      <p>入力された数値が不正です</p>
   <?php elseif($age < 20): ?>
      <h1>ソフトドリンク</h1>
      <ul>
         <li>オレンジジュース</li>
         <li>ウーロン茶</li>
      </ul>
   <?php else: ?>
      <h1>アルコール飲料</h1>
      <ul>
         <li>日本酒</li>
         <li>ワイン</li>
      </ul>
   <?php endif; ?>
</body>
</html>

for/foreach構文のコロン記法

if構文と同様に、for/foreachにもコロン記法が存在します。for構文は endfor; で、foreach構文は endforeach; で締めます。以下は、foreachのコロン記法を使用した2次元配列の出力例です。

<?php
$list = [
    ["name" => "田中コウジ", "age" => 25, "address" => "埼玉県"],
    ["name" => "佐藤ヒカル", "age" => 27, "address" => "千葉県"],
    ["name" => "木村ハナコ", "age" => 24, "address" => "群馬県"]
];
?>
<html>
<head>
   <meta charset="UTF-8">
</head>
<body>
<h1>メンバーのリスト</h1>
<table border="1" cellspacing="0" cellpadding="5">
   <tr>
      <th>氏名</th><th>年齢</th><th>住所</th>
   </tr>
   <?php foreach($list as $person): ?>
   <tr>
      <td><?php echo $person["name"]; ?></td>
      <td><?php echo $person["age"]; ?>才</td>
      <td><?php echo $person["address"]; ?></td>
   </tr>
   <?php endforeach; ?>
</table>
</body>
</html>
Last modified: 2021-07-02

Author