0

我的代码:

echo mb_convert_case('Björk Guðmundsdóttir', MB_CASE_UPPER, 'UTF-8');
echo mb_convert_case('Björk Guðmundsdóttir', MB_CASE_LOWER, 'UTF-8');

和输出:

BJRK GUMUNDSDTTIR
bjrk gumundsdttir

一些字符被删除。有谁知道为什么?

更新 1:

我注意到我的 PHP 文件被注意保存为 UTF-8。所以,我将它保存为 UTF-8 并再次运行代码。我的新结果:

BJÖRK GUÃMUNDSDÓTTIR
björk guðmundsdóttir

更新 2:

我想问题只是它在浏览器中显示得很奇怪。通过添加解决header('Content-Type: text/html; charset=utf-8');

4

1 回答 1

1

首先确保您的编辑器设置为没有 BOM 的 UTF-8,然后您必须确保您传递给函数的文本实际上是 UTF-8,因为这是您指定为第三个参数的内容。然后它应该工作

编辑:您可能还想检查您的浏览器是否正确解释字符并确保页面正在设置内容类型,使用<meta>标签或 PHPs header()

于 2013-04-10T00:33:11.527 回答