当前位置:首页 > PHP教程 > php应用 > 列表

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

发布:smiling 来源: PHP粉丝网  添加日期:2021-04-25 14:37:48 浏览: 评论:0 

这篇文章主要介绍了PHP中file_exists()判断中文文件名无效的解决方法,是很多PHP开发人员都会遇到的问题,主要涉及对编码的转换,需要的朋友可以参考下

本文实例讲述了PHP中file_exists()判断中文文件名无效的解决方法。分享给大家供大家参考。具体方法如下:

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

定义和用法:

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

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

例子1代码如下:

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

输出:1

例子2 代码如下:

  1. $realname='中文.txt'
  2. if(file_exists($realname)) { 
  3.    // 永远都进不了这里 
  4. else 
  5.   echo 'www.phpfensi.com 提醒你文件不存在了'

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

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

解决方案:

  1. $realname='中文.txt'
  2. if(file_exists(iconv('UTF-8','GB2312',$realname))) { 
  3.    // 这样就可以支持了 

结果显示1 ,问题解决了

此外还需要提醒大家,在php中最好不要使用中文名字,像apache,linux,php这些对中文支持不怎么好,所以大家尽量使用英文。

希望本文所述对大家的PHP程序设计有所帮助。

Tags: file_exists PHP中文文件名无效

分享到: