0

Quand je lance php-closure je reçois une erreur de PHPerreur Php dans le compilateur fermeture exécution

Undefined index: HTTP_IF_NONE_MATCH in <b>/php-closure.php</b> on line <b>183</b> 

Ligne 184 de php-fermeture est

trim($_SERVER['HTTP_IF_NONE_MATCH']) == $etag) { 

Cette erreur ne se produit que lorsque la fermeture a déjà écrit le comprimé javascript dans le répertoire une fois, si le répertoire est vidé l'erreur n'apparaît pas. Que signifie cette erreur et comment puis-je l'éviter?

Merci beaucoup!

Répondre

2

Il s'agit probablement d'un message négligeable. Le code doit d'abord vérifier la présence de HTTP_IF_NONE_MATCH dans le groupe de serveurs, avant de vérifier sa valeur. Ce qui est défini dans $ _SERVER a tendance à changer de serveur à serveur (et les en-têtes envoyés par le client) donc probablement le développeur d'origine avait cette valeur définie, et n'a pas pensé à le vérifier.

Vous pouvez préfixer la ligne en question avec un chèque

if (array_key_exists("HTTP_IF_NONE_MATCH", $_SERVER)) 

(selon que la logique du programme et de débit le permettent, bien sûr)

ou baissez le rapport d'erreurs pour que les avis ne sont pas affiché (non recommandé, mais MTBE nécessaire si vous ne pouvez pas toucher le paquet) en mettant cela en début de votre application:

error_reporting(E_ALL^E_NOTICE); 

ha @ Ivo s une grande troisième alternative dans son commentaire.

+1

Si vous ne voulez pas modifier le code source PHP-Closure, vous pouvez mettre le code suggéré avant d'appeler la fermeture de PHP et initialiser $ _SERVER ['HTTP_IF_NONE_MATCH'] avec une valeur par défaut. –

+0

merci à vous deux pour offrir une réponse très complète:) – Mohammad