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'
War es hilfreich?

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.

Es wird Konditionaloperator genannt

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';
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top