首页 > php函数 > 解决PHP中file_exists()判断中文文件名无效

解决PHP中file_exists()判断中文文件名无效

php中判断文件是否存在我们会使用file_exists函数或is_file函数,但在使用file_exists时如果你文件名或路径是中文在uft8编码文档是是无效的那么如何解决此问题呢,下面我们一起来看看。

定义和用法

file_exists() 函数检查文件或目录是否存在。

如果指定的文件或目录存在则返回 true,否则返回 false。

例子1

<?php
echo file_exists("test.txt");
?>

输出:

1

例子2

$realname='中文.txt';

<?php
if(file_exists($realname)) {
   // 永远都进不了这里
}
else
{
    echo 'www.phprm.com 提醒你文件不存在了';
}
?>

输出结果是 www.phprm.com 提醒你文件不存在了

但我很惊讶呀文件是存在了,并且路径也没有问题php文件与中文.txt在同一目录所以这样写是没有问题,于时想想会不会是中文问题于,我对编码进行转换

解决方案:

<?php
$realname='中文.txt';
if(file_exists(iconv('UTF-8','GB2312',$realname))) {
   // 这样就可以支持了
}
?>

结果显示1 ,问题解决了

php入门小编提醒你,在php中最好不要使用中文名字,像apache,linux,php这些对中文支持不怎么好,所以大家尽量使用英文哦。

 


文章网址:http://www.phprm.com/function/57523.html

随意转载^^但请附上教程地址。

标签:iconv

相关文章

发表留言