Maison > Article > développement back-end > Comment envoyer des fichiers aux utilisateurs depuis un serveur PHP ?
Envoyer le fichier à l'utilisateur
Lorsqu'un utilisateur interagit avec un script PHP, vous pouvez rencontrer des scénarios dans lesquels vous devez transmettre un fichier, tel qu'un PDF, vers le navigateur du client. Pour y parvenir, l'approche appropriée dépend de l'emplacement de stockage du fichier.
Fichier côté serveur
En supposant que le fichier réside sur le serveur, la méthode préférée est pour utiliser la fonction readfile(). Cependant, la simple exécution de readfile($file) ne suffit pas. Le script doit inclure les en-têtes appropriés pour permettre au client de recevoir le fichier avec succès.
Reportez-vous à l'exemple suivant du manuel PHP officiel :
<?php $file = 'monkey.gif'; if (file_exists($file)) { header('Content-Description: File Transfer'); header('Content-Type: application/octet-stream'); header('Content-Disposition: attachment; filename='.basename($file)); header('Content-Transfer-Encoding: binary'); header('Expires: 0'); header('Cache-Control: must-revalidate, post-check=0, pre-check=0'); header('Pragma: public'); header('Content-Length: ' . filesize($file)); ob_clean(); flush(); readfile($file); exit; } ?>
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!