くだすれPHP(超初心者用)5at PHPくだすれPHP(超初心者用)5 - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト650:nobodyさん 09/02/01 21:04:08 質問です elseif (preg_match("/^\d{8}$/", $_GET["id"])){ $id = $_GET["id"]; } GETで8桁の数字のみ受け取るように↑のようにしましたが if文でマッチしてても変数に代入する際はpreg_matchなりで GET変数内を数字のみとなるように変換した方がいいものなんでしょうか 651:nobodyさん 09/02/01 21:10:26 お前は何を言ってるんだ 652:nobodyさん 09/02/01 21:11:12 >650 俺ならctype_digit($str) && strlen($str) === 8 まあそれはそれとして、別にいいんじゃね。その正規表現にマッチしてるなら間違いなく数字だけだし。 653:nobodyさん 09/02/01 21:16:32 末尾の$は改行にもマッチするから数字だけとは限らないんじゃ? 654:nobodyさん 09/02/01 22:42:37 ググってたら遅くなりました >>652 matchに漏れがなければ問題ないように思たんですが あげてもらった関数の方が確実 でしょうか >>653 正規表現はまだよくはわかってないのですがググったところ \r\nのことでしょうか。 http://scripting.cocolog-nifty.com/blog/2008/12/post-c9b4.html ここを参考に一応"/^\d{8}\r?$/"としてみましたが >hoge$に掛かりません の理屈が今一わかりません。 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch