Sto avendo edizione con operatore ternario di PHP, dal PHP versione 5.3 si è in grado di sostituire l'operatore ternario stenografia con una versione ancora più brevestile più recente PHP operatore ternario è indesiderati risultato con la funzione isset
// Older version
$route = isset($test) ? $test : 'test is NOT set';
// Newer version as of 5.3
$route = isset($test) ?: 'test is NOT set';
Now on la versione più recente, se $test
non è impostata. funziona bene Tuttavia, quando è impostato a causa del metodo isset()
, restituisce true
o 1
anziché il valore.
Devo utilizzare il metodo più vecchio per ottenere $route
uguale al valore di $test
invece di un valore booleano di 1
?
È possibile utilizzare '$ route = $ test?: 'Test NON è impostato';' invece. – FtDRbwLXw6
Se non ti dispiace sopprimere i messaggi di errore puoi ancora usare la stenografia. Non è il modo "corretto" o "carino" per farlo, ma funziona ancora - $ route = @ $ test?: "Test NON è impostato"; –