所有格式空格,格式化为手打的空格,包含不间断空格
/**
* 所有格式空格,格式化为手打的空格
* @param string $str
* @return string
*/
function replaceSpaces($str, $replacement = ' ')
{
$str = preg_replace('/\s+/', $replacement, $str); // 垂直制表符
$str = preg_replace('/\xc2\xa0/', $replacement, $str); // 不间断空格
return trim($str);
}
// 单元测试 | 全部通过
function TestRplaceSpaces()
{
$seeds = [
"制表符" => "\t",
"换行符" => "\n",
"回车符" => "\r",
"标准空格" => "\x20",
"垂直制表符" => "\x0B",
"TAB空格" => " "
];
foreach ($seeds as $key => $val) {
$res = $key . replaceSpaces($val, "OK") . "<br/>";
echo $res;
}
}