フォーマットチェックを兼ねて、explode で分割し、3つの配列になった場合のみ、checkdate しますが、引数にはそれぞれ +0 を書いておくといいですね。
// 【生年月日】 $ymd = explode("/", $_POST['birthday']); if ( count($ymd) != 3 ) { $ErrorMessage .= "日付のフォーマットが正しくありません<br>"; } else { if( !checkdate( $ymd[1]+0,$ymd[2]+0,$ymd[0]+0 ) ) { $ErrorMessage .= "日付が正しくありません<br>"; } }
大昔は、checkdate 部分は自作したものですが、各言語にそれなりのがあると思います。その際、必要な値を文字列から分割する必要があるので、どうしてもこういう発想になります。 正規表現使うより説明しやすいってのあります。大昔は、2000年になる前の頃の事ですが、言語と呼ばれるものも未発達だったので、2000年がうるう年である事をチェックするのに、自分で書いた記憶のある人も世の中には沢山居ます。 通常は、100年で割り切れると、うるう年では無いわけですが、400年で割り切れる 2000年はうるう年なので、気を使ったもんです。
|
【PHPの最新記事】
- PHP で cURL はオプションが全て。いろいろあるので、ちょっとまとめ【2014/7/31の記事】
- PHP : 画像を返す処理( readfile ) と画像を縮小する処理( GD )
- PHP における標準的なテスト用アップロードのテンプレート
- PHP : MySQL から JSON 文字列を返す自作(テスト用) API テンプレート
- ImageMagick を Windows(32ビット)の PHP で利用する
- PHP でカタカナのフリガナ入力のチェック
- TCPDF で罫線を引く
- フリーフォントを使って PHP 画像(GD)として埋め込むアクセスカウンターの DB 処理部分
- フリーフォントを使って PHP 画像(GD)として埋め込むアクセスカウンターの画像出力部分の作成
- PHP + GD : 四角形への DropShadow
- PHP : ログインとブラウザの当日日付データ
- hash_hmac は秘密鍵があるので、辞書の総当りとかでパスワードは解りませんから。パスワード抜かれるのは、フィッシングがスパイウェアか、本人が口に出した場合ですね。
- すごく当たり前の事なんですが、UTF-8N で保存されたテキストファイルをメモ帳で変更して保存したら先頭に EF BB BF という爆弾が仕掛けられるのでダメですよ
- 5秒毎にリロードする PHP ページ
- 実用的かどうかは置いておいて、修正画面の日付入力に jQuery のカレンダーを使用する
- PHPで使用する為にフォント(.TTC)の分解
- PHP : GD で Windows のビットマップを扱う
- 【PHP】 <?=$value?> ではない変数埋め込み手法
- PHPでサービス停止( extension=php_com_dotnet.dll )
- PHP : コマンドライン php(cli) で10進数と16進数の変換