Ich bin mir nicht sicher, was Sie mit Ihrem Code zu tun versuchen. Sie überprüfen, ob es leer ist, und versuchen Sie dann $err
auf einen Wert festzulegen, indem Sie einen leeren Wert konzentrieren.
Vielleicht ist das wahrscheinlicher, was Sie wollen.
// Ternary operator
$err = empty($data['key']) ? "empty key" : '';
# -----------IF-----------------THEN ---- ELSE
// Ternary operator (nesting) (not recommended)
// Changing empty() to isset() you must rewrite the entire logic structure.
$err = empty($data) ? 'empty' : is_numeric($data) ? $data : 'not numeric';
# ---------IF--------- THEN -------ELSEIF-----------THEN-----ELSE
// Null Coalescing operator ?? available in PHP 7.
$err = $data['key'] ?? 'empty value';
# ---- IF ISSET USE --- ELSE value
// Nesting
$err = $data['key'] ?? $_SESSION['key'] ?? $_COOKIE['key'] ?? 'no key';
# IF ISSET USE -- IF ISSET USE ------ IF ISSET USE ------ELSE
Der Ternary-Operator ist dokumentiert ** so viel **. Musstest du wirklich eine neue Frage öffnen? Warum nicht Google? '$ var = (? : );' –
sollte also so aussehen: '$ var = (leer ($ data ['key']) $ error =" empty. $ key ": continue;'? –
http://php.net/manual/en/language.operators.comparison.php#language.operators.comparison.ternary –