Was bedeutet diese Syntax (page = $ Seite $-Seite: 'default') in PHP bedeuten?
-
21-09-2019 - |
Frage
Ich bin neu in PHP. Ich kam in dieser Syntax in Wordpress . Was ist die letzte Zeile des Codes tun?
$page = $_SERVER['REQUEST_URI'];
$page = str_replace("/","",$page);
$page = str_replace(".php","",$page);
$page = $page ? $page : 'default'
Lösung
Es ist ein Beispiel für den bedingten Operator in PHP.
Es ist die Kurzform von:
if (something is true ) {
Do this
}
else {
Do that
}
Siehe verwenden If / Else Ternary Operatoren http://php.net/manual/en/language.operators.comparison. php .
Andere Tipps
Das ist der ternäre Operator :
Diese Zeile übersetzt zu
if ($page)
$page = $page;
else
$page = 'default';
Es ist eine ternäre Operation die nicht PHP oder Wordpress-spezifisch ist, existiert es in den meisten langauges .
(condition) ? true_case : false_case
Also in diesem Fall der Wert von $ Seite wird „default“, wenn $ page etwas ähnliches wie falsch ist - sonst wird es unverändert bleiben.
Es bedeutet, dass, wenn $ Seite keinen Wert haben (oder es ist Null), setzen Sie ihn auf ‚default‘.
Es bedeutet, wenn die $ Seite Variable dann nicht leer ist die $ Seite Variable in der letzten Zeile zuweisen, dass Variable oder setzen Sie ihn auf ‚default‘ Seitenname.
Weitere ausführliche Syntax der letzten Zeile lautet:
if ($page)
{
$page = $page;
}
else
{
$page = 'default';
}
Das ist der sogenannte Konditionaloperator . Es funktioniert wie eine if-else-Anweisung, so
$page = $page ? $page : 'default';
die gleiche Funktion wie
if($page)
{
$page = $page;
}
else
{
$page = 'default';
}