没有不值得去解决的问题,也没有不值得去学习的技术!

preg_split 执行中文后的结果,有乱码

preg_split 执行中文后的结果,有乱码。

作者:

在

, ,

1、preg_split 执行中文后的结果,有乱码。如图1

preg_split 执行中文后的结果,有乱码。
图1
PHP

$optionText = '多选一,多选二';
$optionInputs = preg_split('/[\r\n,,;;、]+/', $optionText);

2、在使用 preg_split() 之前,先将字符串转换为 UTF-8。u 表示 Unicode(UTF-8)模式,避免中文字符拆分错误。

PHP

$optionText = mb_convert_encoding('多选一,多选二', 'UTF-8', 'auto');
$optionInputs = preg_split('/[\r\n,,;;、]+/u', $optionText);


3、拆分正确,不再报错。

Plaintext

Array ( [0] => 多选一 [1] => 多选二 )

关于作者 · 持续学习与技术实践

我是一名拥有 15 年以上开发经验的技术从业者,自 2013 年起持续运营个人技术博客,记录工作与个人项目中遇到的真实问题,以及解决问题过程中的探索、实践和思考。

除了技术写作,我也在持续开发和维护自己的独立项目,探索新技术和新工具在实际场景中的应用。我始终相信,没有不值得去解决的问题,也没有不值得去学习的技术。

如果这篇文章对你有所帮助,欢迎浏览博客中的其他文章,也欢迎交流技术经验与想法。

关于我  ·  GitHub  ·  邮件联系