我们说我们有一个字符串:
$string = 'łłąśasłąśłąśóroduktu';
基本上,要使用以下代码替换所有特殊字符:
$new_string = iconv('utf-8','us-ascii//TRANSLIT//IGNORE', $string);
它工作正常所以我得到的结果如下:
llasaslaslasoroduktu
但是,问题是..我在数据库中有相同的字符串,我查询它(PDO准备,然后获取),一旦我尝试将结果解析为上面的iconv方法,我得到的结果如下:
asroduktu
因此,在这种情况下,一些字母丢失了,并没有被它的干净版本取代。
表字符集当前设置为utf8_general_ci。 在99%的场景中,这些特殊字符来自波兰语。
我如何使用PHP解决这个问题?