在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
PHP中通常使用file_exists()判断某个文件或者文件夹是否存在,如果文件或文件夹存在则返回true,否则返回false。今天写程序时发现,在网页使用UTF8编码的情况下,该函数对于中文文件名或者文件夹名不能返回正确值,始终返回false。猜测可能是编码不同导致PHP不能正确判断。 下面是不能够返回正确值的代码,无论文件是否在都返回不在: 1 <?php; 2 $file="/attachment/21/0/材料.rar"; 3 $newfile = dirname(__FILE__).$file; 4 5 echo file_exists($newfile); 6 ?>
增加了一句将UTF8编码转换为GB2312编码的语句,改进后可以了正确判断了: 1 <?php 2 $file="/attachment/21/0/材料.rar"; 3 $newfile = dirname(__FILE__).$file; 4 5 $file=iconv('UTF-8','GB2312',$file); 6 7 echo file_exists($newfile); 8 ?>
|
2022-08-30
2022-08-17
2022-11-06
2022-08-18
2022-07-18
请发表评论