Maison >développement back-end >Problème PHP >Que se passe-t-il lorsque la modification de php ne fonctionne pas ?

Que se passe-t-il lorsque la modification de php ne fonctionne pas ?

PHPz
PHPzoriginal
2023-04-12 09:17:531521parcourir

Les développeurs qui utilisent PHP ont rencontré cette situation récemment : ils ont modifié le code PHP, mais le site n'a pas été mis à jour. En effet, PHP met en cache les scripts compilés lors de son exécution, exécutant ainsi le code rapidement pour améliorer l'efficacité de l'exécution. Dans ce cas, vos modifications risquent de ne pas être mises à jour sur la page Web à temps, ce qui empêchera votre code modifié de fonctionner. Cependant, ne vous inquiétez pas, cet article vous présentera comment résoudre ce problème et rendre vos modifications efficaces.

  1. Désactivez le cache OPcache
    Généralement, lorsque nous utilisons PHP 5.5 et supérieur, une extension de cache appelée OPcache sera activée par défaut. Cette extension peut grandement améliorer les performances des scripts PHP, mais elle empêchera également le code modifié de prendre effet. Vous pouvez désactiver OPcache en modifiant le fichier php.ini.

Tout d'abord, recherchez le fichier php.ini : exécutez la fonction phpinfo() et recherchez la colonne Fichier de configuration chargé pour trouver le chemin du fichier php.ini. Ensuite, ouvrez le fichier avec un éditeur et ajoutez le contenu suivant à la fin du fichier :

[opcache]
; 一般情况下,opcache 模块会自动加载 zend_extension=opcache
opcache.enable=0; 关闭 opcache 模块

Après avoir redémarré le service Apache ou PHP-FPM, votre code peut être mis à jour à temps.

  1. Augmenter le numéro de version
    Dans les fichiers PHP, vous pouvez utiliser des variables ou des constantes pour remplacer le nom du fichier à chaque requête. Ces constantes et variables peuvent être des horodatages, des numéros de version, etc. afin que le cache sache quand mettre à jour le cache.

Définissez un numéro de version dans le fichier PHP :

define('VERSION', 't0005');

Puis dans le fichier PHP qui doit charger les fichiers CSS et JavaScript, réécrivez les liens CSS et JavaScript en liens avec des numéros de version :

<link href="style.css?v=<?php echo VERSION; ?>" rel="stylesheet" type="text/css"/>

Cela fera Le fichier a un nouveau numéro de version à chaque accès afin que le cache sache quand mettre à jour le cache.

  1. Utilisez Ctrl + F5 pour forcer l'actualisation
    Lorsque vous constatez que le code modifié ne peut pas s'exécuter dans le navigateur, vous pouvez utiliser Ctrl + F5 pour forcer l'actualisation de la page Web. Cela ignorera le cache du navigateur et téléchargera l'intégralité du contenu.

Cependant, cette approche est inefficace lorsque votre code est mis en cache côté serveur.

  1. Supprimer les fichiers cache
    Si vos modifications ne peuvent toujours pas prendre effet, c'est peut-être parce que le fichier cache existe déjà. Vous pouvez résoudre le problème en supprimant ces fichiers cache. Les fichiers cache se trouvent généralement dans un dossier temporaire sous le répertoire du site Web.

Trouvez le dossier temporaire, supprimez tous les fichiers qu'il contient et essayez à nouveau d'accéder à la page Web.

Résumé
Les méthodes ci-dessus sont des moyens courants pour résoudre le problème de la modification du code qui ne prend pas effet. Si vous avez suivi ces étapes et que vous rencontrez toujours des problèmes, vous devrez peut-être examiner plus en détail votre code et la configuration de votre serveur.

Dans le développement d'applications, le débogage du code est un processus continu et il existe de nombreuses façons de résoudre les problèmes. Ces méthodes ne sont que quelques-unes d’entre elles, mais elles résoudront le problème dans la plupart des cas. J'espère que ces solutions vous aideront!

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn