Что такое «:» в PHP?

Что означает символ : на PHP?

PHP предлагает альтернативный синтаксис для некоторых из его структур управления; а именно, если, while, for, foreach и switch. В каждом случае основной формой альтернативного синтаксиса является изменение открывающей скобки на двоеточие (:) и закрывающая скобка до endif ;, endwhile ;, endfor ;, endforeach ;, или endswitch; соответственно.

Вы также сталкиваетесь : если вы используете альтернативный синтаксис для структур управления :

 <?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; ?> 

Или, как уже упоминалось, тернарный оператор :

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

(Примеры взяты из документации)


Изменить: почему-то я не видел, что альтернативный синтаксис уже упоминался, должен быть слишком усталым;) Во всяком случае, я оставлю его таким, какой он есть, поскольку я считаю, что фактический пример и ссылка на документацию более полезны, чем просто текст.

Я предполагаю, что вы видите этот синтаксис:

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

Это краткая форма if / else. ? является if, а: – else.

Короче говоря:

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

Как вы уже писали другие, вы, вероятно, смотрите на тройственную логику.

Однако, если два из них вместе, то это оператор разрешения области , используемый для ссылки на методы / свойства статуса и константы.

Это может означать несколько вещей. Вы можете иметь в виду тернарный оператор , ?: .