Uh, muy bueno vart

Me gustaría agregar...
También podemos colocar @ antes de una función que pueda probocar un error, como es el caso de las consultas a bases de datos:
<?php
$puntero=mysql_connect("url","user","pass");
?>
Si ocurre un problema en la base de datos que imposibilita su uso (como suele suceder en algunas ocaaciones cuando excedemos el timeout en una consulta) devolverá un error donde nos ofrecerá el nombre de usuario que intentó conectarse, la url y si usó password. Esto es algo muy grave, y en caso de que no utilicemos "error_reportin
g()" de la manera debida, podemos utilizar @ de esta manera:
<?php
$puntero=@mysql_connect("url","user","pass");
?>
En caso de error, no devolverá ningun texto que ofresca información. Lo mismo se puede utilizar para funciones de E/S como fopen, fwrite, file... así como para sockets.
En algunas ocaciones, deseamos conocer todos los pequeños errores que tenemos en un script para prácticamente lo perfeccionemos, entonces necesitamos lo contrario que es que nos reporte todos los errores, la mejor manera de lograrlo es con:
<?php
error_reporting(E_ALL);
?>