ตั้งใจจะใช้คลาส DateTime ของ php ตรวจความถูกต้องของวันที่ ลองไปลองมา ทำไม 31 กุมพาพันธ์ ถึงผ่านมาได้ละเนี่ย ลองไล่โค้ดดูก็ถูกนี่น่าลองเขียนใหม่
$date = date_create('2011-02-31'); if (!$date) { $e = date_get_last_errors(); foreach ($e['errors'] as $error) { echo "$errorn"; } } else { echo date_format($date, 'Y-m-d'); } echo'<br />'; try { $date = new DateTime('2011-02-31'); } catch (Exception $e) { echo $e->getMessage(); exit(1); } echo $date->format('Y-m-d');
มันแปลงให้เป็น 2011-03-03 ฉลาดมาก…….
สุดท้ายก็เปลี่ยนไปใช้
if(checkdate(02, 31, 2011)) { echo '<br />ถูกต้องคราบ'; } else { echo '<br />ลองใหม่น่า'; }
จะใช้คำสั่งใหม่ๆ อะไร ตรวจดูดีๆ นะครับ อาจจะมีเซอร์ไพรส์
ดูเพิ่มเติม
About the author