Der ?:-Operator in PHP 5.3
PHP 5.3 führte den ?:-Operator ein, eine komprimierte Form des zuvor verfügbaren Bedingungsoperators . Ursprünglich hatte der Bedingungsoperator die Form:
expr ? val_if_true : val_if_false
In PHP 5.3 können Sie den Mittelteil weglassen, was zur ?:-Syntax führt. Dies entspricht:
expr ? expr : val_if_false
Zum Beispiel prüft der folgende Code, ob die Variable $c aufrufbar ist. Ist dies nicht der Fall, wird eine Ausnahme ausgelöst:
require __DIR__.'/c.php'; if (!is_callable($c = @$_GET['c'] ?: function() { echo 'Woah!'; })) throw new Exception('Error'); $c();
Anonyme Funktionen in PHP 5.3
Neben dem ?:-Operator wurden in PHP 5.3 auch anonyme Funktionen eingeführt . Im Gegensatz zur Frage gibt es anonyme Funktionen schon seit einiger Zeit nicht mehr. Sie waren eine neue Funktion in PHP 5.3. Anonyme Funktionen werden ohne Namen erstellt und typischerweise als Rückrufe oder als Argumente für andere Funktionen verwendet.
Im obigen Beispiel wird die anonyme Funktion der Variablen $c zugewiesen. Es hat keine Parameter und gibt „Woah!“ aus. wenn man angerufen wird. Diese anonyme Funktion wird als Standardwert für die Variable $c verwendet, die prüft, ob die Funktion aufrufbar ist, bevor versucht wird, sie auszuführen.
Das obige ist der detaillierte Inhalt vonWas ist der ?:-Operator in PHP 5.3?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!