文章详情页
PHP fopen中文文件名乱码问题解决方案
浏览:287日期:2022-09-08 18:10:10
一般在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
相关文章:
1. ASP.NET MVC使用jQuery的Load方法加载静态页面及注意事项2. 通过vue如何设置header3. div的offsetLeft与style.left区别4. JSP实现带查询条件的通用分页组件5. Vue中 引入使用 babel-polyfill 兼容低版本浏览器的方法6. 原生js XMLhttprequest请求onreadystatechange执行两次的解决7. 解析原生JS getComputedStyle8. vue3怎么数据监听watch/watchEffect9. XML文档搜索使用小结10. Vue如何使用ElementUI对表单元素进行自定义校验及踩坑
排行榜

网公网安备