«

PHP去除字符串空格

时间:2026-10-20 07:11     作者:emer     分类: 无


PHP去除字符串空格

引言

用户输入、表单提交常带首尾空格甚至全角空格、换行,入库前不清洗会导致登录比对失败、查询匹配不上、统计失真。trim系列处理首尾,preg_replace处理中间多余空格,按需选用。

去除首尾空白:trim

$name = trim("  张三  ");
// 结果:张三,首尾空格、制表符、换行一并去掉

trim默认去空格、tab、换行、回车、null字节等首尾空白。

只去左侧:ltrim

$path = ltrim("/var/www/", "/");
// 结果:var/www/,第二个参数指定要剥掉的字符集

只去右侧:rtrim

$file = rtrim("photo.jpg/", "/");
// 结果:photo.jpg/,只剥右边指定字符

自定义去除字符

trim($str, " \t\n,");

第二个参数列出要去除的字符,不止空格,可同时去逗号、换行。

去掉中间多余空格

$str = preg_replace('/\s+/', ' ', $str);
// 多个连续空白压成一个空格
$str = preg_replace('/\s/', '', $str);
// 彻底删除所有空格和空白

trim管首尾,中间空格必须用正则。

处理全角空格

$str = str_replace(' ', '', $str);
// 全角空格\u3000普通trim去不掉,要单独替换

数组批量清洗

$clean = array_map('trim', $_POST);

对整个表单数组逐个trim,登录注册入口常用。

注意事项

总结

trim去首尾空白,ltrim去左,rtrim去右,第二个参数自定义字符集,中间连续空格用preg_replace压成一个或全删,全角空格单独str_replace,表单用array_map批量清洗。记住trim只管首尾,密码不清洗,全角空格要单独处理,入库前统一规范保证比对一致。

标签: PHP 后端开发 trim 字符串空格 输入清洗