
broma
Soy nuevo en PHP. Encontré esta sintaxis en WordPress. ¿Qué hace la última línea de ese código?
$page = $_SERVER['REQUEST_URI'];
$page = str_replace("https://stackoverflow.com/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'

eco
Eso es el operador ternario:
Esa línea se traduce como
if ($page)
$page = $page;
else
$page="default";

Tazas
Es un ejemplo del operador condicional en PHP.
Es la versión abreviada de:
if (something is true ) {
Do this
}
else {
Do that
}
Ver Uso de operadores ternarios If/Else
http://php.net/manual/en/language.operators.comparison.php.

cenefa
Es un operación ternaria que no es específico de PHP o WordPress, existe en la mayoría de los idiomas.
(condition) ? true_case : false_case
Entonces, en este caso, el valor de $page será “predeterminado”, cuando $page sea algo similar a falso; de lo contrario, permanecerá sin cambios.

Wallyk
Significa que si $page no tiene un valor (o es cero), configúrelo como ‘predeterminado’.

Sarfraz
Significa que si la variable $page no está vacía, entonces asigne la variable $page en la última línea de esa variable o configúrela en el nombre de página ‘predeterminado’.
se llama operador condicional

Pedro Mortensen
La sintaxis más detallada de la última línea es:
if ($page)
{
$page = $page;
}
else
{
$page="default";
}

Éter
Eso es lo que se llama operador condicional. Funciona como una sentencia if-else, por lo que
$page = $page ? $page : 'default';
hace lo mismo que
if($page)
{
$page = $page;
}
else
{
$page="default";
}
¡guau! respuestas abrumadoras .. 🙂 gracias
– broma
20 de enero de 2010 a las 8:37
posible duplicado de Referencia – ¿Qué significa este símbolo en PHP?
– fuera
1 de abril de 2012 a las 5:54