¿Cuál es la diferencia entre estas dos llamadas a función en PHP?@ personaje antes de una llamada de función
init_get($somevariable);
@init_get($somevariable);
¿Cuál es la diferencia entre estas dos llamadas a función en PHP?@ personaje antes de una llamada de función
init_get($somevariable);
@init_get($somevariable);
la "@" silenciará cualquier error de php que su función pueda provocar.
También se silenciarán los avisos, por lo que no solo errores – lugte098
¿Pero qué pasa si coloca '@' delante de la función 'trigger_error' de PHP? Lo he visto en algún código, pero su comportamiento es inconsistente para mí hasta ahora. En algunos casos, sí veo el error informado por el controlador de error configurado y, en otros casos, parece ser informado. – fritzmg
El '@' establecerá temporalmente 'error_reporting' en 0 pero no" suprimirá "el error. – solidgumby
Silencia errores y advertencias. Ver Error Control Operators.
http://www.faqts.com/knowledge_base/view.phtml/aid/18068/fid/38
Todas las expresiones de PHP puede ser llamado con el prefijo "@", que apaga informe de errores para esa expresión particular.
Como ya se ha respondido, el @
detendrá el error (si existe) de aparecer.
En términos de rendimiento, esto no se recomienda.
Lo que PHP está haciendo es:
Si no desea que aparezcan errores, use error_reporting(0);
.
o simplemente escribir código libre de errores: P
O 'error_reporting (NONE);' –
Prefiere poner cero, pero si eso funciona, genial no lo sabía :) – AntonioCS
¿Qué pasa con las funciones que no controla, como el correo, por ejemplo? ¿Qué otras opciones existen? Estoy usando @ en este momento, pero sería genial poder hacerlo de otra manera – spuas
Como todo el mundo dice, se detiene la salida de errores para esa función en particular. Sin embargo, esto disminuye enormemente el rendimiento ya que tiene que cambiar la configuración de visualización de errores dos veces. Yo recomendaría NO ignorar advertencias o errores y corregir el código en su lugar.
Gracias a todos por sus respuestas. Ese código no es mío, solo busqué el código phpBB por curiosidad, así que no tengo problemas de rendimiento. :) Gracias de nuevo. – nixie
el "@" cerrará cualquier error de php y avisos –