我正在尝试将奇怪的单个语音标记转换为 php.ini 中的普通语音标记。
$str = str_replace(chr(039), "'", $str);
我发现它是来自许多来源的代码 039,包括https://www.atwebresults.com/ascii-codes.php?type=2。
但它会导致“解析错误:无效的数字文字”错误。
我的整个功能:
function sanitiseString($str){
$str = str_replace(chr(130), ',', $str); // baseline single quote
$str = str_replace(chr(132), '"', $str); // baseline double quote
$str = str_replace(chr(133), '...', $str); // ellipsis
$str = str_replace(chr(039), "'", $str); // left single quote
$str = str_replace(chr(145), "'", $str); // left single quote
$str = str_replace(chr(146), "'", $str); // right single quote
$str = str_replace(chr(147), '-', $str); // double hyphon
$str = str_replace(chr(150), '-', $str); // en dash
$str = str_replace(chr(151), '-', $str); // em dash
$str = str_replace(chr(148), '"', $str); // right double quote
$str = str_replace(chr(034), '"', $str); // weird double speech mark
$str = str_replace(chr(034), '"', $str); // weird double speech mark
$str = iconv("UTF-8","UTF-8//IGNORE",$str); //ignore everything else unrecognised.
$str = str_replace("’", "'", $str);
$str = str_replace('“', '"', $str);
$str = str_replace('”', '"', $str);
return $str;
}