':'在PHP'if'语句的末尾是什么意思?

时间:2011-03-16 16:20:37

标签: php

表达式末尾的:是什么意思?

<?
if(!validateName($_POST['name'])):
?>

4 个答案:

答案 0 :(得分:4)

Colon(:)运算符主要用于php和html的嵌入式编码。

使用此运算符可以避免使用花括号。该算子降低了嵌入式编码的复杂性。你可以使用this(:)运算符,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>

答案 1 :(得分:3)

  

PHP为其某些控制结构提供了另一种语法;即,if,while,for,foreach和switch。在每种情况下,替代语法的基本形式是将左大括号更改为冒号(:),并将结束大括号分别更改为endif;,endwhile;,endfor;,endforeach;或endswitch;。

<?php if ($a == 5): ?>
A is equal to 5
<?php endif; ?>

参考:Alternative syntax for control structures

答案 2 :(得分:0)

if()语句之后的这个':'运算符本质上是一个多行if语句。它将在<? endif ?>之后的某些代码(很可能是PHP以外的语言)之后终止。

答案 3 :(得分:0)

这是endif语法(http://www.phpbuilder.com/manual/migration.if-endif.php),使用如下:

<?
if(!validateName($_POST['name'])):
    echo "Something";
endif;
?>

当与Javascript和HTML交互时,这种风格在php脚本中很有用。