Я новичок в PHP. Я встречал этот синтаксис в WordPress. Что делает последняя строка этого кода?
$page = $_SERVER['REQUEST_URI'];
$page = str_replace("/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'
Я новичок в PHP. Я встречал этот синтаксис в WordPress. Что делает последняя строка этого кода?
$page = $_SERVER['REQUEST_URI'];
$page = str_replace("/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'
Это пример условного оператора в PHP.
Это сокращенная версия:
if (something is true ) {
Do this
}
else {
Do that
}
См. Использование тернарных операторов If / Else http://php.net/manual/en/language.operators.comparison.php < / em>.
Это тернарный оператор:
Эта строка переводится как
if ($page)
$page = $page;
else
$page = 'default';
Это тернарная операция, которая не является специфической для PHP или WordPress, она существует на большинстве языков.
(condition) ? true_case : false_case
Таким образом, в этом случае значение $ page будет "по умолчанию", когда $ page чем-то похожим на false - в противном случае оно останется неизменным.
Это означает, что если у $ page нет значения (или оно равно нулю), установите для него значение «по умолчанию».
Это означает, что если переменная $ page не пуста, тогда назначьте переменную $ page в последней строке этой переменной или установите для нее имя страницы по умолчанию.
Он называется условным оператором
:
Форта, который работает с именем функции, списком параметров и блоком кода. Это также будет тернарный оператор.
- person slebetman; 20.01.2010
Более подробный синтаксис последней строки:
if ($page)
{
$page = $page;
}
else
{
$page = 'default';
}
Это так называемый условный оператор < / а>. Он работает как оператор if-else, поэтому
$page = $page ? $page : 'default';
делает то же самое, что и
if($page)
{
$page = $page;
}
else
{
$page = 'default';
}