鉴于此测试脚本:
<?php
echo setlocale(LC_ALL, '') . "\n";
$in = 'Città';
$var = preg_replace('/\s+$/', '', $in);
echo bin2hex($in) . "\n";
echo bin2hex($var) . "\n";
Run Code Online (Sandbox Code Playgroud)
关于Ubuntu的PHP 5.5.3,我得到:
en_GB.UTF-8
43697474c3a0
43697474c3a0
Run Code Online (Sandbox Code Playgroud)
Mac上的PHP 5.5.9(通过Macports)
en_GB.UTF-8
43697474c3a0
43697474c3
Run Code Online (Sandbox Code Playgroud)
有没有什么理由为什么Macports构建将以à不同的方式对待角色?
我知道c3a0,当被视为ASCII中的两个字节时,Ã后面跟着一个不间断的空格.我想知道为什么一个系统将2个字节视为没有u修饰符的UTF-8 .