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.php 파일에서 마지막 문장
down_file("answer.jpg","/http/");
을
down_file("答案.jpg","/http/");
그 결과 다음 대화 상자가 나타났습니다. 왜 파일 이름이 "Answer.jpg"가 아닌가요? 결국 다운로드된 것은 사진이 아니었습니다.
이유는 무엇인가요?
http://www.php.cn/php-weizijiaocheng-300416.html
미사용 계정이 있으신 분은 저에게 보내주세요.