me encuentro haciendo esto mucho:PHP: las mejores prácticas para la Insuficiencia silencioso
$something = @$_GET['else'];
if ($something) {
// ...
} else {
// ...
}
Al igual que, casi siempre trato con matrices. Estoy acostumbrado a JavaScript y la capacidad de simplemente comprobar si hay un valor falso. ¿Pero es esto apropiado en PHP? ¿Estoy tratando de forzar que PHP sea algo que ya entiendo, en lugar de aprenderlo como un lenguaje propio?
EDITAR
I udnerstand que solo puedo usar isset
(también bajo * * soportarlo), pero se siente torpe para mí, y que conduce a situaciones aún clunkier donde yo estoy tratando de eco el valor:
// what I want to do
echo '<input type="text" name="whatever" value="', @$values['whatever'], '" />';
// what I fear I must do
echo '<input type="text" name="whatever" value="';
if (isset($values['whatever'])) {
echo $values['whatever'];
}
echo '" />';
Dejando de lado el problema de saneamiento, prefiero la primera versión. Pero tengo una sospecha furtiva de que es un gran no-no. (También tengo una sospecha furtiva de que no sé cómo deletrear "sospecha").
Con respecto a su edición: Creo que lo que quiere hacer es simplemente bien. Un '$ values ['whatever']' inexistente saldrá como nulo y se convertirá en una cadena nula. El alcance de la supresión de errores es lo suficientemente limitado para que no oculte un error que debe ver. – awm