什么是PHP中的“:”?

时间:2010-05-25 20:02:02

标签: php syntax

符号:在PHP中意味着什么?

6 个答案:

答案 0 :(得分:32)

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

答案 1 :(得分:20)

如果您使用alternative syntax for control structures

,也会遇到:
<?php
if ($a == 5):
    echo "a equals 5";
    echo "...";
elseif ($a == 6):
    echo "a equals 6";
    echo "!!!";
else:
    echo "a is neither 5 nor 6";
endif;
?>

或者已经提到过ternary operator

$action = (empty($_POST['action'])) ? 'default' : $_POST['action'];

(取自文档的例子)


编辑:不知怎的,我没有看到替代语法已经提到,一定是太累了;)无论如何,我会保持原样,因为我认为是一个实际的例子和一个链接到文档比纯文本更有用。

答案 2 :(得分:8)

我猜你看到了这种语法:

print ($item ? $item : '');

这是if / else的简短形式。的?是if,而the:是其他。

答案 3 :(得分:2)

if语句缩短:

$val = (condition) ? "condition is true" : "condition is false";

答案 4 :(得分:1)

这可能意味着许多事情。您可以指ternary operator?:

答案 5 :(得分:1)

正如其他人发布的那样,你可能正在研究三元逻辑。

但是,如果其中两个在一起,则它是scope resolution operator,用于引用状态方法/属性和常量。