私はそうのようなするpreg_matchの文があります。PHP preg_matchが正しく認識されていませんか?
preg_match("/^[0-9a-zA-z\.\_\-]$/", $_POST['username'])
をしかし、それは常にfalseに相当します。
"aaa" - false
"#$&Y#" - false
" a#*$7"- false
WHY
私はそうのようなするpreg_matchの文があります。PHP preg_matchが正しく認識されていませんか?
preg_match("/^[0-9a-zA-z\.\_\-]$/", $_POST['username'])
をしかし、それは常にfalseに相当します。
"aaa" - false
"#$&Y#" - false
" a#*$7"- false
WHY
それだけで一つの文字にマッチだことが一つ以上に一致するように、あなたは+
を必要としています。
preg_match("/^[0-9a-zA-z\.\_\-]+$/", $_POST['username'])
。また 'A-z'の注を参照 - と' .'ことを、 '_'と' -'が – fge
ああエスケープする必要はありません!どうもありがとう! –
あなたの入力は実際には二重引用符で囲まれていますか? (あなたが最後にそれを入れているので)もしそうであれば、それはまた – fge
を失敗したのも不思議、ドットをエスケープする必要はありませんが、ここではアンダーませんかダッシュ: '[0-9A-ZA-Z ._-]' – fge
@fgeありません本当。リッチ・アダムスの答えを見てください。できます。真 –