Lorsque vous gérez un téléchargement HTTP, le fichier est téléchargé sur
$_FILES['field_name']['tmp_name']
4 Réponses :
la fonction sys_get_temp_dir () Code>
renvoie le chemin de répertoire utilisé par PHP pour stocker des fichiers temporaires. P>
Renvoie C: \ Windows \ Temp \. Mon extrait retour D: / Wamp / TMP.
WAMP est préconfiguré pour utiliser le directeur du TMP de la distribution.
ini_get('upload_tmp_dir');
C'est probablement la réponse la plus correcte, car le téléchargement Temp Dir peut être différent du système Temp Dir.
Comme dans la distribution XAMPP.
Sachez que tous les serveurs Web définissent upload_tmp_dir code>. Vous ferez mieux de suivre la suggestion de la baisse de @ Nateglenn de retomber à
sys_get_temp_dir () code> si
ini_get ("uppload_tmp_dir") code> retourne une chaîne vide.
J'utiliserai personnellement la suggestion de SBM007 de: p>
ini_get ('upload_tmp_dir'); p>
Comme cela prend en compte Apache par paramètres VirtualHost, tels que les restrictions Upload_Tmp_Dir et Open_Basedir, où: P>
sys_get_temp_dir () p>
ne renvoie que le répertoire temporaire spécifique du système d'exploitation, et si dans un environnement multi-hébergements pourrait vous donner un répertoire que vous ne pouvez pas écrire à. P>
Utilisation de XAMPP sur mon ordinateur privé, la méthode ini_get code> génial, car php.ini spécifie la valeur
upload_tmp_dir code>. Cependant, après avoir téléchargé sur mon serveur d'employeur, ce code n'a pas fonctionné car la valeur n'existait apparemment pas dans le fichier php.ini de son serveur. Donc, j'ai utilisé le Temp Dir du système comme par défaut et le script fonctionne maintenant sur mon ordinateur et sur son serveur:
$ini_val = ini_get('upload_tmp_dir');
$upload_tmp_dir = $ini_val ? $ini_val : sys_get_temp_dir();
... ou $ upload_tmp_dir = ini_get ('uppload_tmp_dir')?: sys_get_temp_dir () code> dans PHP 5.3 ou ultérieur.