最近一个用户反映上传的txt文件直接用浏览器打开,有的浏览器正常有的会显示乱码。然后天兴工作室看了下判定是txt文件里面有中文,然后编码格式不对造成的,最简单的解决方法就是在电脑上保存txt文件格式选“UTF-8 BOM”,如下图所示:
本文则是来分享另外一种用php来处理txt编码的方法。
首先,用php保存带bom头的txt文件,代码如下:
$str = '这里是一些中文'; //字符串 $str = chr(0xEF).chr(0xBB).chr(0xBF).$str; //加上bom头 $txt_path = '1.txt'; //文件保存路径 $fp = fopen($txt_path, "w"); fwrite($fp,$str); fclose($fp);
然后是php读取txt文本文件时需要去除bom头。
先写一个处理bom头的函数:
//此函数来源于:https://www.feiniaomy.com/post/582.html function del_bom($contents){ $charset[1] = substr($contents, 0, 1); $charset[2] = substr($contents, 1, 1); $charset[3] = substr($contents, 2, 1); if (ord($charset[1]) == 239 && ord($charset[2]) == 187 && ord($charset[3]) == 191) { $rest = substr($contents, 3); return $rest; }else{ return $contents; } }
然后读取txt先去掉bom头再读取:
$txt_path = '1.txt'; //txt文件路径 $upload_txt = file_get_contents($txt_path); $upload_txt = del_bom($upload_txt); echo $upload_txt;
以上就是用php来处理txt文本文件的bom头详细教程了。
相关推荐
- zblog登录后台一直提示验证码错误的原因和解决方法03-01
- zblog使用api提交post数据提示419错误的原因和解决方法02-23
- vue3项目引入vant报错的错误原因和解决办法03-12
- zblog怎么截取指定字数的摘要?zblog摘要自定义截取方法介绍02-29
- 微信支付JSPAI调起支付后提示“该订单已过期,请重新下单”的解决办法06-11
- 宝塔一键迁移提示“连接服务器失败”的原因和解决办法05-16
- 微信小程序报错:operateWXDataForAd:fail的原因和解决办法05-14
- php保存添加bom头的txt文件和读取时去除txt的bom头05-02
- 小程序使用mp-html组件后输出空白的原因和解决办法04-08
- zblog获取全部分类列表函数GetCategoryList的参数和使用方法介绍说明03-30
欢迎 你 发表评论: 取消回复
- 最新文章
- 热文排行
- 最多评论
- 1阿里云oss配置项获取步骤截图,包含ID和Secret、区域节点Endpoint、存储空间Bucket和资源访问域名04-14
- 2zblog登录后台一直提示验证码错误的原因和解决方法03-01
- 3zblog使用api提交post数据提示419错误的原因和解决方法02-23
- 4天兴工作室2025年春节放假公告01-25
- 5天兴用户中心插件“微信通知”功能设置教程11-09
- 6阿里云2024双11活动推荐 通过本站链接参与另外赠送本站代金券11-05
- 7天兴工作室官网购物活动:全场8折优惠券 不限次数不限金额04-17
- 8天兴工作室zblog纯博客主题 vue3+小程序双版本03-19
- 9vue3项目引入vant报错的错误原因和解决办法03-12
- 标签聚合
- ×1zblog评论管理×1视频播放×1订单过期×1zblog添加分享按钮×1zblog会员注册×1开发者模式×1文章标题×1固定域名错误×1链接栏目×1绿色调×1网易云跟贴×1zblog修改主题×1emlogcms模板×1zblog主题怎么修改×1登陆地址×1调用数量×1绝对地址×1搜索引擎×1跟随滚动×1zblogphp1.3
最新评论
-
天兴工作室
并没有任何限制 -
访客
请问 zblog淘客主题 对使用者的要求是必须是企业吧? -
阿浩
大佬们,丢几个除了作者以外的演示站,我想看看大家的布局设置 -
有趣生活
一直想开发zblog的功能,zblog的敷在不知道够够不够 -
访客
发布文章时候,那怎么改默认状态呢比如改成默认审核状态?