检查字符串中的空格

时间:2011-11-03 08:37:56

标签: php string

正在处理我网站的注册页面,我想格式化用户名字段,以防止用户提交其中包含空格的用户名。 例如,如果用户提交像“space man”这样的用户名,我想将其更改为“space_man”。 我正在使用php,我该如何处理它。

6 个答案:

答案 0 :(得分:0)

str_replace(' ','_',$input);

答案 1 :(得分:0)

这是一个简单的字符串替换:

$username = str_replace(" ", "_", $username);

答案 2 :(得分:0)

我当然感谢strtr

strtr($_GET['username'],' ','_');

它也非常强大

strtr($_GET['username'],array(' '=>'_',"\t"=>'_'));
显然,

str_replace 也有效。

答案 3 :(得分:0)

这样做的最佳方法之一是在两个地方验证 - 客户端和服务器。

在客户端,您必须使用javascript进行验证。

obj.value.replace(" ", "_");
alert("Invalid username. Changing space to underscore.");

在php中也在服务器端做同样的事情。

strstr($_POST['username'],' ','_');

如果“空间”是唯一对您而言重要的事情,那么就可以做到这一点。否则你必须写下所有的规则。

答案 4 :(得分:0)

str_replace(' ', '_', $txtUserName);

答案 5 :(得分:-3)

看看http://www.php.net/str_replace - 我相信你会从那里弄明白。当然,还有很多你想要验证的东西,所以最好做白名单过滤(比如你允许的,而不是你不允许的),像这个正则表达式:

if (! preg_match('/^[a-z0-9]{3,32}$/', $_POST['username'])) {
    die('Invalid username'); // of course, dying is not good either, just for the example
}