Maison  >  Article  >  développement back-end  >  Comment déclencher automatiquement les téléchargements de fichiers en PHP ?

Comment déclencher automatiquement les téléchargements de fichiers en PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-24 07:36:10842parcourir

How to Automatically Trigger File Downloads in PHP?

Comment déclencher des téléchargements automatiques de fichiers en PHP

Question :

Comment implémenter un une fonctionnalité en PHP qui invite automatiquement les utilisateurs à télécharger un fichier sur leur ordinateur local lorsqu'ils cliquent sur un lien Web ? Ceci est couramment observé sur les sites de téléchargement où les utilisateurs peuvent enregistrer des fichiers logiciels sur leurs disques en cliquant.

Réponse :

Pour obtenir ce comportement, vous devez envoyer des en-têtes spécifiques. avant de sortir le fichier en PHP :

header("Content-Disposition: attachment; filename=\"" . basename($File) . "\"");
header("Content-Type: application/octet-stream");
header("Content-Length: " . filesize($File));
header("Connection: close");

L'en-tête Content-Disposition spécifie que le navigateur doit inviter l'utilisateur à enregistrer le fichier avec le fichier fourni filename.

L'en-tête Content-Type indique que le fichier doit être traité comme un flux binaire générique, que la plupart des navigateurs reconnaissent comme un fichier téléchargeable.

L'en-tête Content-Length définit la taille de le fichier en cours de téléchargement.

Enfin, l'en-tête Connection: close demande au navigateur de fermer la connexion après le téléchargement se termine.

Remarques supplémentaires :

  • Certains navigateurs peuvent exiger le type MIME application/force-download au lieu de application/octet-stream.
  • Assurez-vous que le fichier existe et est accessible avant d'essayer de le télécharger.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn