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

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

Nores

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

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

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

ЗЫ Просьба не пинать, чайник я чайник.
 
Это тернарный оператор
$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']; 

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

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab