J'admets cependant que je suis le premier à dire que les messages d'erreur sont les alliés des développeurs web PHP. J'avais même déjà écrit une note à ce sujet il y a quelques temps (voir ici).

Bien évidement c'est toujours vrai que lors du développement de vos applications ; vous devez travailler avec display_errors à On. Mais ensuite, une fois votre application rendue publique vous devez bien entendu cacher de la vue du grand public les erreurs que vous avez pu oublier. Gardez-les pour vous.

Le php.ini d'un serveur de développement ressemblera donc à ceci :

error_reporting = E_ALL | E_STRICT
display_errors = on

Alors que sur un serveur de production ; le php.ini prendra les valeurs suivantes :

error_reporting = E_ALL
display_errors = off
log_errors = on
error_log = /chemin/vers/le/log

Il se peut dans certains cas que vous n'ayez pas accès au php.ini de votre serveur de production, dans le cas d'un hébergement mutualisé par exemple. Si c'est votre cas, vous pouvez changer ces valeurs directement depuis un fichier .htaccess.

Il vous suffit alors d'ajouter les lignes sous la forme suivante :

php_value display_errors off