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

前端之家收集整理的这篇文章主要介绍了解决PHP中file_exists()判断中文文件名无效前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
解决PHP中file_exists()判断中文文件名无效感兴趣的小伙伴,下面一起跟随编程之家 jb51.cc的小编两巴掌来看看吧!
PHP中判断文件是否存在我们会使用file_exists函数或is_file函数,但在使用file_exists时如果你文件名或路径是中文在uft8编码文档是是无效的那么如何解决此问题呢,下面我们一起来看看。
定义和用法
file_exists() 函数检查文件或目录是否存在。
如果指定的文件或目录存在则返回 true,否则返回 false。
例子1

/**
* 解决PHP中file_exists()判断中文文件名无效
*
* @param 
* @arrange 512-笔记网: www.www.jb51.cc
**/
<?PHP
echo file_exists("test.txt");
?>
/***   来自编程之家 jb51.cc(jb51.cc)   ***/@H_301_7@
输出: 1
例子2

/**
* 解决PHP中file_exists()判断中文文件名无效
*
* @param 
* @arrange 512-笔记网: www.www.jb51.cc
**/
$realname='中文.txt';
if(file_exists($realname)) {
// 永远都进不了这里
}
else
{
echo '提醒你文件不存在了';
}
/***   来自编程之家 jb51.cc(jb51.cc)   ***/@H_301_7@
输出结果是 提醒你文件不存在了 但我很惊讶呀文件是存在了,并且路径也没有问题PHP文件中文.txt在同一目录所以这样写是没有问题,于时想想会不会是中文问题于,我对编码进行转换

解决方案:

/**
* 解决PHP中file_exists()判断中文文件名无效
*
* @param 
* @arrange 512-笔记网: www.www.jb51.cc
**/
$realname='中文.txt';
if(file_exists(iconv('UTF-8','GB2312',$realname))) {
// 这样就可以支持了
}
/***   来自编程之家 jb51.cc(jb51.cc)   ***/@H_301_7@

结果显示1 ,问题解决
PHP中最好不要使用中文名字,像apache,linux,PHP这些对中文支持不怎么好,所以大家尽量使用英文哦。 原文链接:https://www.f2er.com/php/528014.html

猜你在找的PHP相关文章