我看到了以下代码段:
<?php
if(!empty($_POST)): // case I: what is the usage of the :
if(isset($_POST['num']) && $_POST['num'] != ''):
$num = (int)$_POST['num'];
....
if($rows == 0):
echo 'No';
else: // case II: what is usage of :
echo $rows.'Yes';
endif;
我想知道php代码中“:”的用法是什么。
答案 0 :(得分:8)
这是alternative syntax for control structures。
所以
if(condition):
// code here...
else:
// code here...
endif;
相当于
if(condition) {
// code here...
} else {
// code here...
}
在处理HTML时,这非常方便。 Imho,它更容易阅读,因为您不必查找大括号{}
,并且PHP代码和HTML不会混淆。例如:
<?php if(somehting): ?>
<span>Foo</span>
<?php else: ?>
<span>Bar</span>
<?php endif; ?>
我不会在“普通”PHP代码中使用替代语法,因为这里的大括号提供了更好的可读性。
答案 1 :(得分:3)
这个:
运算符主要用于php和html的嵌入式编码。
使用此运算符可以避免使用花括号。该算子降低了嵌入式编码的复杂性。您可以将此:
运算符与if,while,for,foreach等结合使用......
没有':'运算符
<body>
<?php if(true){ ?>
<span>This is just test</span>
<?php } ?>
</body>
使用':'运算符
<body>
<?php if(true): ?>
<span>This is just test</span>
<?php endif; ?>
</body>
答案 2 :(得分:2)
答案 3 :(得分:0)
我使用冒号的唯一时间是简写if-else语句
$var = $bool ? 'yes' : 'no';
相当于:
if($bool)
$var = 'yes';
else
$var = 'no';