如何检查PHP中的每个字符是否都是字母数字?

时间:2010-07-02 03:10:36

标签: php string

preg_match_all("/[^A-Za-z0-9]/",$new_password,$out);

以上只检查第一个字符,如何检查是否全部为字母数字?

3 个答案:

答案 0 :(得分:18)

使用内置函数可能是个更好的主意:ctype_alnum

答案 1 :(得分:6)

preg_match("/^[A-Za-z0-9]*$/", $new_password);

如果所有字符都是字母数字(但要注意非英文字符),则会给true^标记字符串的开头,^ $ ^标记结束。如果字符串为空,它还会给出true。如果您要求字符串不为空,则可以使用+量词而不是*

preg_match("/^[A-Za-z0-9]+$/", $new_password);

答案 2 :(得分:0)

老问题,但这是我的解决方案:

<?php
public function alphanum($string){
    if(function_exists('ctype_alnum')){
        $return = ctype_alnum($string);
    }else{
        $return = preg_match('/^[a-z0-9]+$/i', $string) > 0;
    }
    return $return;
}
?>