侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

php语言中检测及转换文件字符编码函数介绍

php  /  管理员 发布于 1个月前   65

微软的CP936通常被视为等同GBK,连IANA也以“CP936”为“GBK”之别名[1]。

事实上比较起来,GBK 定义之字符较 CP936 多出 95 字(15 个非汉字及 80 个汉字)


检测字符的编码函数

mb_detect_encoding ,它可以检测你使用的字符串是什么编码,然后返回字符串编码字符

代码示例:

mb_detect_encoding(string $str, mixed $encoding_list = mb_detect_order(), bool $strict = false): string | false

可以用array或者 逗号分隔的字符串来指定 encoding_list ,否则使用默认的mb_detect_order()


转换字符的编码函数

mb_convert_encoding ,它是php内部多字节字符串编码转换函数,可以在有需要的场合进行编码转换,如:

解决 在GB2312编码环境下使用Ajax产生的中文 字符乱码 问题


代码示例:

mb_convert_encoding(array|string $string, string $to_encoding, array|string|null $from_encoding = null): array|string|false


两者搭配效果更佳:

代码示例:

$encode = mb_detect_encoding($file_content, ["UTF-8", "GB2312", "ASCII", "GBK", "BIG5"]);
$file_content = mb_convert_encoding($file_content, 'UTF-8', $encode);

  • 上一条:
    laravel中轻量化的钱包实现方案:Laravel Wallet
    下一条:
    hyperf2.2框架中添加Cache代理类的流程步骤及使用案例
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在PHP中使用MQTT协议的流程步骤(0个评论)
    • PHP远程代码执行漏洞:mysqlnd拓展中存在堆缓冲区溢出漏洞修复方式建议(0个评论)
    • PHP8.2.0 Alpha 1版本发布,目前可用于测试(0个评论)
    • php语言中按字节为单位获取JSON数据大小(0个评论)
    • php语言中检测及转换文件字符编码函数介绍(0个评论)
    • 近期文章
    • 在laravel框架中使用中间件 + 队列的方式记录请求日志(0个评论)
    • laravel框架常用速查表收集(0个评论)
    • go语言中查找最长不含有重复字符的字符串算法示例代码(0个评论)
    • laravel中where IN多列特殊查询类型代码示例(0个评论)
    • 使用Laravel Airdrop加速您的CI构建(0个评论)
    • go语言中日期时间戳比较功能示例代码(0个评论)
    • 来自一位国外前端程序员学习go语言的功能第三部分(0个评论)
    • Laravel9 Eloquent WHERE Like搜索查询示例代码(0个评论)
    • 在PHP中使用MQTT协议的流程步骤(0个评论)
    • PHP远程代码执行漏洞:mysqlnd拓展中存在堆缓冲区溢出漏洞修复方式建议(0个评论)
    • 近期评论
    • 博主 在

      centos7中Meili Search搜索引擎安装流程步骤中评论 @鹿   执行以下命令看看你的2.27版本是否存在strin..
    • 鹿 在

      centos7中Meili Search搜索引擎安装流程步骤中评论 这是我的错误提示,下载了对应的glibc-2.25.tar.gz后续按照教程操作..
    • 阿凡达123 在

      golang 怎么做热更新中评论 也可以看看这个:https://github.com/edwingeng/hot..
    • 博主 在

      hyperf框架常用命令-在centos7中退出命令及在docker容器中退出命令中评论 @路过的靓仔:cdn静态资源被墙,已修复..
    • GGGGGGGGG 在

      layui框架常用输入框介绍中评论 写的很好解决问题..
    • 2016-10
    • 2016-11
    • 2017-06
    • 2017-07
    • 2017-08
    • 2017-09
    • 2017-11
    • 2017-12
    • 2018-01
    • 2018-02
    • 2018-03
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2020-07
    • 2020-09
    • 2021-02
    • 2021-03
    • 2021-04
    • 2021-05
    • 2021-06
    • 2021-07
    • 2021-08
    • 2021-09
    • 2021-10
    • 2021-11
    • 2021-12
    • 2022-01
    • 2022-02
    • 2022-05
    • 2022-06
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客