將 { 換為 :,將 } 換為對應的結束關鍵字,專為 PHP/HTML 混合模板 設計,提升可讀性。
| 標準語法 | 替代語法 | 結束標記 |
|---|---|---|
if (...) { | if (...): | endif; |
while (...) { | while (...): | endwhile; |
for (...; ...; ...) { | for (...; ...; ...): | endfor; |
foreach (...) { | foreach (...): | endforeach; |
switch (...) { | switch (...): | endswitch; |
<?php if ($a == 5): ?>
<div>等於 5</div>
<?php elseif ($a == 6): ?>
<div>等於 6</div>
<?php else: ?>
<div>既非 5 也非 6</div>
<?php endif; ?>
<?php while ($row = $stmt->fetch()): ?>
<li><?= $row['name'] ?></li>
<?php endwhile; ?>
<?php for ($i=0; $i<10; $i++): ?>
<span><?= $i ?></span>
<?php endfor; ?>
<?php foreach ($items as $item): ?>
<option value="<?= $item['id'] ?>"><?= $item['title'] ?></option>
<?php endforeach; ?>
<?php switch ($i): ?>
<?php case 0: ?>等於 0<?php break; ?>
<?php case 1: ?>等於 1<?php break; ?>
<?php default: ?>其他<?php endswitch; ?>
endif 比孤立的 } 更明確屬於哪個 if模板層用替代語法,邏輯層用標準語法。現代框架(Blade、Twig、Smarty)更進一步提供專屬模板語法,進一步分離關注點。