Назначение символов в PHP-коде

  • Автор темы Nores
  • Дата начала
Статус
Закрыто для дальнейших ответов.
N

Nores

Разбирая исходники форума phpBB наткнулся на такую строку

$sid = (!empty($HTTP_POST_VARS['sid'])) ? $HTTP_POST_VARS['sid'] : $HTTP_GET_VARS['sid'];

Подскажи plz что означает знак вопроса и двоеточие?

ЗЫ Просьба не пинать, чайник я чайник.
 
C

coderrrr

Это тернарный оператор
$var = (условие == true ? значение1 : значение2);
если условие == true - то $var примет значение1. Иначе $var примет значение2

PHP:
<?php 

if ( empty($HTTP_POST_VARS['sid'] === true ) { 
$sid = $HTTP_GET_VARS['sid']; 
} else { 
$sid = $HTTP_POST_VARS['sid']; 
} 

// ЗЫ: и на последок скажу, что гработнее было бы юзать такую конструкцию: 

$sid = $_REQUEST['sid']; 

?>
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!