trim() 仅识别 ASCII 空白字符,对 Unicode 空格(如u3000、u00A0、u200b)及 UTF-8 “伪装空格”(如 、 )无效;PHP 7.3 下应先用 preg_replace('/p{Z}+/u', ' ', $str) 清理 Unicode 分隔符,再 trim() 收尾。

trim() 为什么对某些空白字符无效
因为 trim() 默认只识别 ASCII 空白字符:" "、" "、"
"、"
"、"
trim() 仅识别 ASCII 空白字符,对 Unicode 空格(如u3000、u00A0、u200b)及 UTF-8 “伪装空格”(如 、 )无效;PHP 7.3 下应先用 preg_replace('/p{Z}+/u', ' ', $str) 清理 Unicode 分隔符,再 trim() 收尾。

因为 trim() 默认只识别 ASCII 空白字符:" "、" "、"
"、"
"、"