Maison > Article > développement back-end > php trois façons de télécharger des fichiers
Manuel recommandé : Manuel d'auto-apprentissage complet en php
Cet article partage principalement avec vous trois façons de télécharger des fichiers en php. J'espère pouvoir aider tout le monde.
<button> <a href = "http://localhost/down.zip"> 下载文件</button>
Cliquez sur ce bouton pour télécharger :
Paramètres de passage :
<button> <a href = "http://localhost?f='down'"> 下载文件 </button>
Trouver des fichiers et défier le lien de téléchargement :
<?php$down = $_GET['f']; //获取文件参数$filename = $down.'.zip'; //获取文件名称$dir ="down/"; //相对于网站根目录的下载目录路径$down_host = $_SERVER['HTTP_HOST'].'/'; //当前域名//判断如果文件存在,则跳转到下载路径if(file_exists(__DIR__.'/'.$dir.$filename)){ header('location:http://'.$down_host.$dir.$filename); }else{ header('HTTP/1.1 404 Not Found'); }
Résultat :
Le fichier existe
Le fichier existe n'existe pas
<?php $file_name = "down";$file_name = "down.zip"; //下载文件名 $file_dir = "./down/"; //下载文件存放目录 //检查文件是否存在 if (! file_exists ( $file_dir . $file_name )) { header('HTTP/1.1 404 NOT FOUND'); } else { //以只读和二进制模式打开文件 $file = fopen ( $file_dir . $file_name, "rb" ); //告诉浏览器这是一个文件流格式的文件 Header ( "Content-type: application/octet-stream" ); //请求范围的度量单位 Header ( "Accept-Ranges: bytes" ); //Content-Length是指定包含于请求或响应中数据的字节长度 Header ( "Accept-Length: " . filesize ( $file_dir . $file_name ) ); //用来告诉浏览器,文件是可以当做附件被下载,下载后的文件名称为$file_name该变量的值。 Header ( "Content-Disposition: attachment; filename=" . $file_name ); //读取文件内容并直接输出到浏览器 echo fread ( $file, filesize ( $file_dir . $file_name ) ); fclose ( $file ); exit (); }
Résultat : Identique à la seconde
Résumé :
La première et la deuxième opérations sont relativement simples, mais elles exposent facilement la véritable adresse du fichier et ne sont pas très sécurisés. Trois façons de mieux cacher la véritable adresse du fichier
Articles connexes recommandés :
1.Comment télécharger des fichiers sur le serveur avec PHP 🎜>
2.Comment télécharger des fichiers volumineux en PHP ? (Exemple de code)
3.Comment implémenter la reprise du point d'arrêt de téléchargement de fichiers en PHP
Recommandations vidéo associées :
1. Tutoriel vidéo Cheap(4)_PHP
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!