我继承了对包含两个移动应用程序的现有应用系统的支持 - 在iOS和Android +由php API控制的mysql数据库上。
使用这两个应用程序的用户可以读取和写入mysql表的字符串,通常使用特定于国家/地区的字符,如德语或西班牙语。
数据库表有 utf8_unicode_ci 编码。
php API文件中的mb_detect_encoding()方法声称iOS和Android字符串都是UTF-8。
现在,转向问题。经过一段时间后,发生了在iOS和Android情况下以不同方式插入db的特殊字符。我找不到将Android字符串正确转换为iOS类似的方法(与json_encode兼容)。我尝试了各种选项,最接近的是当我只运行utf8_encode($ android_string)时,但仍然只有一些字符的编码方式与iOS相同。
示例:
óśćąę
óśćąę
< - expected ó????
< - json_encode返回null ó????
< - json_encode没问题,但返回?
,而不是字母你知道在php'Android'字符串中转换为与'iOS'相同的好方法吗?