我有两个字符串,我从网站上抓取。字符串值为'Çorap',但它们在Web浏览器中显示不同:
用于测试的PHP代码:
echo '<h1> string: '.strtolower('çorap').' encoding: '.mb_detect_encoding(strtolower('çorap')).'</h1>';
echo '<h1> string: '.strtolower('Çorap').' encoding: '.mb_detect_encoding(strtolower('Çorap')).'</h1>';
结果:
string: çorap encoding: UTF-8
string: Çorap encoding: UTF-8
这是什么问题?我怎样才能使第一个字符串像第二个字符串一样?
答案 0 :(得分:1)
如果您将字符串çorap
视为çorap
,则表示您的编码设置无效,请尝试:
header('Content-Type: text/html; charset=utf-8');
您不能使用strtolower()
函数小写UTF8字符串,请尝试:
var_dump( 'çorap' === mb_strtolower('Çorap', 'UTF-8') );