ホームページ >バックエンド開発 >PHPチュートリアル >php-PHP は英語で名前が付けられた画像のみをダウンロードできますが、中国語で名前が付けられた画像はダウンロードできません。
PHP は英語で名前が付けられた画像のみをダウンロードできますが、中国語で名前が付けられた画像はダウンロードできません。
php
<?php function down_file($file_name,$file_sub_dir){ $file_name=iconv("utf-8","gb2312",$file_name); $file_path=$_SERVER['DOCUMENT_ROOT'].$file_sub_dir.$file_name; if(!file_exists($file_path)){ echo "文件不存在"; return; } $fp=fopen($file_path,"r"); $file_size=filesize($file_path); /*if($file_size>30){ echo "<script language='javascript'>window.alert('文件过大');</script>"; return; }*/ header("Content-type: application/octet-stream"); header("Accept-Ranges: bytes"); header("Accept-Length: $file_size"); header("Content-Disposition: attachment; filename=".$file_name); $buffer=1024; $file_count=0; while(!feof($fp) && $file_size-$file_count>0){ $file_data=fread($fp,$buffer); $file_count+=$buffer; echo $file_data; } fclose($fp); } down_file("answer.jpg","/http/"); ?>
正常にダウンロードされ、正常に開きました:
次に、fileDown の最後の文
down_file("answer.jpg","/http/");
を
down_file("答案.jpg","/http/");に変更しました最初の写真の .php ファイル
そして、サイト内の画像の名前を「answer.jpg」から「answer.jpg」に変更し、アドレスを更新しました:
http://localhost/http/fileDown.php
その結果、ポップアップが表示されました私にとってこのダイアログボックス:
ファイル名が「Answer.jpg」ではないのはなぜですか?最終的にダウンロードされたのは写真ではありませんでした。
その理由は何ですか?
返信内容:
http://www.php.cn/php-weizijiaocheng-300416.html
私はアイデアを思いついて、fileDown.php ファイルのコードを EditPlus エディターに切り取りました。その後、それをサイト内の同じ場所に保存し、元々 Notepad++ エディタで編集した fileDown.php ファイルを上書きしました。今度は、ダウンロードが成功しただけでなく、画像も正常に開くことができました。長い間悩んだ結果、Notepad++ エディターに問題があることがわかりました。初心者の私は、世界的に有名なエディターである Notepad++ で実際にバグを見つけることができます。ぜひ他の人に教えてそこから学んでください。おいおい。
ところで、上の写真は次の質問に対する私の答えです。博士数学フォーラムのアカウントを持っている人がいたら、この哀れな兄弟を助けてください。
または、使用していない余分なアカウントをお持ちの方がいらっしゃいましたら、私に譲ってください。
http://www.math.org.cn/forum.php?mod=viewthread&tid=37021
上記はphp-PHPは英語の名前の画像しかダウンロードできませんが、名前の画像をダウンロードできない場合はどうすればよいですか中国語で?関連コンテンツの詳細については、PHP 中国語 Web サイト (www.php.cn) に注目してください。