Après je fais:
$temp = tmpfile();
fwrite($temp, "writing to tempfile");
J'aimerais avoir un chemin complet vers le $temp
fichier créé par tmpfile
.
Que dois-je faire pour obtenir ces informations?
$path = tempnam(sys_get_temp_dir(), 'prefix');
Voir cet exemple .
tmpfile
renvoie un pointeur de fichier pouvant être diffusé.
Pour obtenir le chemin correspondant, demandez au flux ses métadonnées :
$file = tmpfile();
$path = stream_get_meta_data($file)['uri']; // eg: /tmp/phpFx0513a
Les avantages de l'approche tmpfile
? PHP supprime automatiquement le $path
quand $file
sort du cadre. Avec tempnam
, vous devez supprimer manuellement le fichier créé.