Solution au problème selon lequel le téléchargement du fichier PHP indique que le fichier est introuvable : ouvrez d'abord le fichier de code de téléchargement correspondant ; puis obtenez l'encodage des caractères depuis le navigateur, puis utilisez la fonction "mb_convert_encoding" pour convertir le fichier ; encodage ; utilisez enfin "file_exists" Téléchargez simplement le fichier d'implémentation de la fonction.
Recommandé : "Tutoriel vidéo PHP"
Téléchargement de fichiers php et solution pour file_exists ne trouvant pas le fichier
Lien : Cliquez pour télécharger
Parmi eux, php :
<?php $filename = $_GET['filename']; //从浏览器获取到的字符的编码是UTF-8,我们要用这个函数转换成GBK才能才本地找到这个文件 $filename = mb_convert_encoding($filename,'GBK','UTF-8'); echo $filename ."<br>"; if( empty($filename)){ echo'<script> alert("非法连接 !"); location.replace ("index.php") </script>'; exit(); } if (!file_exists($filename)) { //检查文件是否存在 echo "文件找不到"; exit; } else { $file = fopen($filename,"r"); // 打开文件 // 输入文件标签 Header("Content-type: application/octet-stream"); Header("Accept-Ranges: bytes"); Header("Accept-Length: ".filesize($filename)); Header("Content-Disposition: attachment; filename=" . $filename); // 输出文件内容 echo fread($file,filesize($filename)); fclose($file); exit(); } ?>
Résumé : Si l'adresse du fichier transmise par le navigateur n'est pas transcodée (de UTF-8 à GBK), alors la fonction file_exists ne trouvera pas le fichier avec un nom chinois.
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!