【发布时间】:2019-06-12 06:57:50
【问题描述】:
我在 php 中导入一个大文件,使用 PHP 7.2.10,但是有些字符串带有“b”(二进制)前缀,例如:
$str = b"PRAÇA";
当该字符串保存在 mongodb 中时,它会引发异常:
检测到字段路径“$set.field”的无效 UTF-8:PRA�A
如果我运行 mb_detect_encoding($str),它会返回“UTF-8”。
如果我运行 iconv(mb_detect_encoding($str), "UTF-8//IGNORE", $str),它会返回 "PRAA"。是的,我知道 "//IGNORE" 会忽略非 utf8 字符。
如何才能返回字符串 PRAÇA?
我真的需要成为那个字符串。
谢谢。
【问题讨论】: