Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist der ?:-Operator in PHP 5.3?

Was ist der ?:-Operator in PHP 5.3?

DDD
DDDOriginal
2024-10-19 12:52:02417Durchsuche

What's the ?: Operator in PHP 5.3?

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn