PHP fopen中文文件名乱码问题解决方案

积极的人在每一次忧患中都看到一个机会,而消极的人则在每个机会都看到某种忧患。

一般在php中会使用fopen进行生成文件,但是当文件名存在中文时保存文件会出现中文乱码。 源代码:

<?php
$fileName = __DIR__ . '\测试.txt';
$fp = fopen($fileName, 'w');
fwrite($fp, '这是中文内容');
fclose($fp);
echo $fileName.'<br>';
if(file_exists($fileName)){
  echo 'hhhhh';
}
?>

结果:

文件名是乱码

解决:

对文件名进行编码。

<?php
$fileName = __DIR__ . '\测试.txt';
$fileName = iconv('UTF-8', 'GBK', $fileName);
$fp = fopen($fileName, 'w');
fwrite($fp, '这是中文内容');
fclose($fp);
echo $fileName.'<br>';
if(file_exists($fileName)){
  echo 'hhhhh';
}
?>

结果:

文件名非乱码

但是看页面输出的文件名:

输出的文件名为乱码

所以当要在页面上输出文件名又需要保存文件时,可以先保存原先的中文文件名,再通过文件名编码进行创建文件。

以上就是PHP fopen中文文件名乱码问题解决方案。其实我是想鼓起勇气告诉你,如果有一天你想结婚了,告诉我。我会毫不顾忌的跟你走,不在乎你说的什么奢求不奢求。哪怕你没有房,我们可以租,只要有你在我就觉得有安全感。没有车,我就上班挤公交。钱是可以挣的,而对的人,错过了,就再也没有了。而只要你开口,说你要娶我,我就铁了心的嫁。更多关于PHP fopen中文文件名乱码问题解决方案请关注haodaima.com其它相关文章!

您可能有感兴趣的文章
PHP性能优化案例分享

PHP实现短信验证码的发送次数限制

PHP中的异常处理机制深入讲解

PHP常见七种算法合集代码实例

PHP微信扫描二维码关注公众号后自动登录第三方网站