Lo que hace esta sintaxis (página = $ $ página página:? 'Default') en PHP media?
-
21-09-2019 - |
Pregunta
Soy nuevo en PHP. Me encontré con esta sintaxis en WordPress . ¿Qué dice la última línea de código que hacer?
$page = $_SERVER['REQUEST_URI'];
$page = str_replace("/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'
Solución
Es un ejemplo del operador condicional en PHP.
Es la versión abreviada de:
if (something is true ) {
Do this
}
else {
Do that
}
Consulte Usando If / Else ternario Operadores http://php.net/manual/en/language.operators.comparison. php .
Otros consejos
Eso es el operador ternario :
Esa línea se traduce en
if ($page)
$page = $page;
else
$page = 'default';
Es un ternaria operación que no es PHP o específica de WordPress, que existe en la mayoría de langauges .
(condition) ? true_case : false_case
Así que en este caso el valor de $ página será "por defecto", cuando la página $ es algo similar a la falsa - de lo contrario se mantendrá sin cambios.
Esto significa que si la página $ no tiene un valor (o es cero), ponerlo en 'default'.
Esto significa que si la variable $ página no está vacía, entonces asignar la variable de página $ en la última línea de esa variable o se establece en 'default' nombre de la página.
Más detallado de la sintaxis de la última línea es:
if ($page)
{
$page = $page;
}
else
{
$page = 'default';
}