OVH Cloud OVH Cloud

utilisation de filemtime

5 réponses
Avatar
DrPiquouze
Bonjour,

J'ai des problèmes pour utiliser filemtime sur un page dont je mets à
jour le code html régulièrement, et la date retournée est
fantaisiste. Elle n'est pas celle donnée par les infos du fichier,
n'est pas non plus le temps 0 unix (01/01/1970), et ne se modifie pas
lorsque je réenregistre le fichier après modifications.
J'ai recopié un script qu'on trouve partout et qui utilise :
filemtime($PATH_TRANSLATED)
Comment vider le cache pour forcer la relecture des infos ?

Cordialement

5 réponses

Avatar
John GALLET
Bonjour,

Comment vider le cache pour forcer la relecture des infos ?
clearstatcache()


Selon ce que tu en décris, ça devrait résoudre certains de tes
problèmes.

En revanche, attention par ailleurs que certains outils de backup
tripotent allègrement le mtime, atime voire même (enfoirés !) le ctime,
et foutent le b****l dans les scripts (aussi bien shell avec find que
php ou autres).

a++;
JG

Avatar
DrPiquouze
Pour être plus précis (je n'avais pas les éléments dans mon
précédent message) voici la formule utilisée :

echo "<p align="center">Mis &agrave; jour le : " .
date(" d-m-Y H:i:s O", filemtime($PATH_TRANSLATED)) .
"(GMT+2)</p><br>";
Avatar
DrPiquouze
Salut John, merci de ton post !

J'ai mis clearstatcache() dans mon script, mais ça n'a strictement
rien changé.

clearstatcache() ;
echo "<p align="center">Mis &agrave; jour le : " .
date(" d-m-Y H:i:s O", filemtime($PATH_TRANSLATED)) .
"(GMT+2)</p><br>";

et ça donne :

Mis à jour le : 06-04-2005 13:13:00 +0200(GMT+2)

De plus, je ne vois pas à quoi correspondent la date et l'heure
indiqués et immuables.
De mon côté, je n'ai pas utilisé de backup, quand à ceux de mon
hébergeur, je doute qu'ils tripatouillent ça !

A+
Avatar
EspaceTrain
Bonsoir,

clearstatcache() ;
echo "<p align="center">Mis &agrave; jour le : " .
date(" d-m-Y H:i:s O", filemtime($PATH_TRANSLATED)) .
"(GMT+2)</p><br>";
et ça donne :
Mis à jour le : 06-04-2005 13:13:00 +0200(GMT+2)
De plus, je ne vois pas à quoi correspondent la date et l'heure
indiqués et immuables.


La date et heure de création du répertoire, non ?

Perso, pour la date du fichier, à la place de $PATH_TRANSLATED
j'utiliserais __FILE__

--
Fred

Avatar
DrPiquouze
Salut, merci du tuyau, ça marche maintenant, mais j'ai galéré un
moment avant que quelqu'un me dise qu'il fallait [ 2 ] underscore
de chaque côté de FILE !!

Cordialement
Denis