49 votes

php :: combien de temps pour que les fichiers tmp restent?

Je suis en train de travailler sur un script d'upload.

Si un utilisateur télécharge un fichier et il existe déjà, je tiens à avertir l'utilisateur (c'est tout grâce à ajax) et de leur donner la possibilité de le remplacer, ou de l'annuler.

Au lieu de déplacer le fichier, J'étais curieux de savoir si je pouvais laisser le fichier tmp et passer de nouveau le chemin d'accès à ce fichier dans la réponse ajax.

Si ils utilisateur dit écraser l'ancien fichier ajax demande de passer le chemin de retour vers php qui continue de travailler sur le fichier.

Pour que cela fonctionne, cependant j'ai besoin de savoir combien de temps un fichier reste en php tmp dir

63voto

zerkms Points 105994

Les fichiers sont en cours de suppression juste après l'exécution du script php.

20voto

netcoder Points 31874

Pour le téléchargement des fichiers, le manuel indique:

Le fichier sera supprimé de la répertoire temporaire à la fin de la demande si elle n'a pas été déplacé loin ou renommé.

Les fichiers qui doivent être conservées doivent donc être déplacé vers un autre emplacement.

Plus généralement, comme votre question le titre pourrait laisser entendre, les dossiers temporaires sont laissés à être nettoyé par le système. Cela est vrai lorsque vous utilisez des fonctions comme tempnam ou tmpfile, ou tout simplement lors de l'écriture sur le répertoire temporaire (voir sys_get_temp_dir).

Dans Ubuntu, c'est fait à chaque redémarrage du système, ou à un intervalle de temps, défini en /etc/default/rcS.

Dans certains de Red Hat en fonction des distributions, il est fait en utilisant l' tmpwatch utilitaire à partir d'une tâche cron. Dans d'autres, l' /tmp partition est montée à l'aide de l' tmpfs système de fichiers, qui est similaire à un disque RAM (donc être nettoyés lorsque l'ordinateur s'arrête).

Un autre mécanisme connu est un seuil de taille, ce qui signifie que le répertoire temporaire sera nettoyé les anciens fichiers quand il atteint une certaine taille.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X