用preg_match()函数吧!!!
试试这个:
$string = "lsjlfsjdlfjsdlfjs@@@lsdfjsdljf";
$patten = '/^[0-9a-zA-Z]*$/';
$result = preg_match($pattern,$string);
if($result){
  return true;
} else {
  return false;
}

解决方案 »

  1.   

    或者用ereg()函数:
    $string = "lsjlfsdfwerd3565$%$467sjdlfjsdlfjslsdfjsdljf";
    $patten = "^[a-zA-Z0-9]*$";
    $result = ereg($patten, $string);
    if($result){
      return true;
    } else {
      return false;
    }
      

  2.   

    <?
    $string = "1324234fasdfasdfsdfdsfsdFSDFSADF";
    if(!ereg("^[a-zA-Z0-9]+$", $string)){
    return false;
    }
    ?>
      

  3.   

    但假如$string的值是"dsfwofn@#@~!$#@%$$^&()(hsaof"呢?!大家所写的代码全都是返回真!
      

  4.   

    或者我把问题重问一遍吧!就是怎样才$string中查找含有~!@#$%^&*()_+{}:"<>?|,./\;'[]-=
    假如字符串中含有这些符号的其中之一,就给出含有非法字符!
      

  5.   

    <?
    $string = "dsfwofn-hsa&of";
    if(!ereg("^[a-zA-Z0-9]+$", $string)){
    print 'false';
    return false;
    }
    ?>
    这刚才测试过,能行呵
      

  6.   

    return false;这一个是不能显示出东西来的;
      

  7.   

    TO:XIXI
    还是不行啦~!~!
    $string="see$#@%$#";与$string="#$%$%";返回的都不一样!