Solución:
Se le conoce comúnmente como “taquigrafía” o el operador ternario.
$test = isset($_GET['something']) ? $_GET['something'] : '';
medio
if(isset($_GET['something'])) {
$test = $_GET['something'];
} else {
$test="";
}
Para desglosarlo:
$test = ... // assign variable
isset(...) // test
? ... // if test is true, do ... (equivalent to if)
: ... // otherwise... (equivalent to else)
O…
// test --v
if(isset(...)) { // if test is true, do ... (equivalent to ?)
$test = // assign variable
} else { // otherwise... (equivalent to :)
En PHP 7 puedes escribirlo aún más corto:
$age = $_GET['age'] ?? 27;
Esto significa que el $age
La variable se establecerá en la age
si se proporciona en la URL, o estará predeterminado en 27.
Vea todas las características nuevas de PHP 7.
Eso se llama operador ternario y se usa principalmente en lugar de una declaración if-else.
En el ejemplo que dio, se puede usar para recuperar un valor de una matriz dada, isset devuelve verdadero
isset($_GET['something']) ? $_GET['something'] : ''
es equivalente a
if (isset($_GET['something'])) {
$_GET['something'];
} else {
'';
}
Por supuesto, no es de mucha utilidad a menos que lo asigne a algo, y posiblemente incluso asigne un valor predeterminado para un valor enviado por el usuario.
$username = isset($_GET['username']) ? $_GET['username'] : 'anonymous'
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)