PHP中哪些语法有替代语法?
流程控制(包括if、while、for、foreach、switch)这几个语句有替代语法。
替代语法的基本形式:
左花括号({)换成冒号(:),把右花括号(})分别换成 endif、endwhile、endfor、endforeach、endswitch;
举个列子吧:
<?php if( $a<0 ): ?> 小于0 <?php endif; ?>
上面的语句等同于
<?php if( $a<0 ){ ?> 小于0 <?php } ?>
大家都不习惯,而且这么另类要他有什么作用?
好处如下:
1.使HTML和PHP混合页面代码更加干净整齐。
2.流程控制逻辑更清晰,代码更容易阅读。
3.一些从ASP等其他类basic语言家族转来的朋友,会更容易使用PHP。
根据之前描述的使用方法,if语句的替代语法使用如下:
<?PHP if ($a == 5): ?>
<div>等于5</div>
<?php elseif ($a == 6): ?>
<div>等于5</div>
<?php else: ?>
<div>不是5就是6</div>
<?php endif; ?>
while替代语法:
<?php while (expr): ?>
<li>循环点什么</li>
<?php endwhile; ?>
for替代语法:
<?php for (expr1; expr2; expr3): ?>
<li>循环点什么</li>
<?php endfor; ?>
foreach替代语法:
<?php foreach (expr1): ?>
<li>循环点什么</li>
<?php endforeach; ?>
switch替代语法:
<?php
switch ($i):
case 0:
echo "i equals 0";
break;
case 1:
echo "i equals 1";
break;
case 2:
echo "i equals 2";
break;
default:
echo "i is not equal to 0, 1 or 2";
endswitch;
?>