如果字符串末尾有空格,如何修剪所有空格


how to trim all the spaces if there is any at the end of my string?

我的代码如下:

   case 'phone_number':
                        $pattern = "/^'s*'+?'s*([0-9]+'s*)+'s*('(('+?[0-9]+'s*)+'))?'s*[0-9-'s]*[0-9]'s*(x's*['d]{1,})?$/";
                        //$trimmed = str_replace(' ', '', $pattern);
                        $pattern = preg_replace(' ', '', $pattern);
                break;
                default:
                        return false;
                break;
        }
        return preg_match($pattern, $data) ? true : false;

这是对电话号码的验证,我想知道号码后面是否有空格,这样它就不会因我的错误条件trim(strlen($_POST['phone_number'])) > 30 而失败

我该怎么做?非常感谢!

您正在调用:

trim(strlen($_POST['phone_number'])) > 30

翻译过来就是:

strlen($_POST['number'])) --> will be 10, or 12
trim( the_number_above ) --> nothing to trim

当然,这个数字将少于30个——按正确的顺序调用函数:

strlen(
    trim( $_POST['phone_numer'] )
) > 30

无论如何,我会在脚本的一开始就修剪所有的输入,而不是在你做的每一次检查中。