PHPの6文字以上の半角英数字の正規表現について


PHPの6文字以上の半角英数字の正規表現作成中に  
if(preg_match('/^[a-zA-Z0-9]+$/',($_POST['password'])) !== 6  
と  
if(preg_match('/^[a-zA-Z0-9]+$/',($_POST['password'])) >= 6

この2パターンで試したのですが、上手く動作しませんでした。  
お手数をおかけしますがご教授お願い致します。




`preg_match` の返り値は、マッチした (=1) かマッチしないか (=0) であり、文字数ではありません。

正規表現で文字数を指定したい場合、`{N}` や `{n,m}` のような書式を使います。  
元のコードに当てはめるなら

[code]

    if( preg_match('/^[a-zA-Z0-9]{6}$/',($_POST['password']) ) {
        // a-zA-Z0-9 の6文字ちょうどにマッチ
    }
    
[/code]

もしくは、単純に文字数を確認するなら `strlen`, `mb_strlen` 等を使う方法もあります。

