วันนี้เขียนปลักอินใส่เข้าไปในเวิร์ดเพรส เป้าหมายที่ตั้งไว้ก็คือจะให้มันส่งอีเมล์ไปหาสมาชิกทุกคน ในวันสิ้นเดือน คือวันสุดท้ายของเดือนนั่นแหละ ถ้าจะให้มันส่งอีเมล์ก่อนอื่นก็ต้องรู้ให้ได้ก่อนใช่มั้ยว่าวันนี้น่ะมันเป็นวันสิ้นเดือนหรือเปล่า ด้วยความที่ต้องการเครื่องมือที่มีอยู่ให้เกิดประโยชน์สูงสุด ซึ่งก็คือกูเกิล บวกกับความคิดที่ว่ามันต้องมีใครอยากรู้มาก่อนเราบ้างล่ะว้า จะเช็กวันสิ้นเดือนอย่างไร
ก็เจอกับลิ้งก์นี้ http://stackoverflow.com/questions/1686724/php-last-day-of-the-month ได้ความกระจ่างว่า ใช้คำสั่ง date ธรรมดาๆนี่แหละ ส่งพารามิเตอร์ t ไปให้มัน
echo date("t-m-Y"); |
ผมก็ลองเข้าไปดูที่เว็บ http://php.net/manual/en/function.date.php อยากรู้ว่า t นั้นมันมีรายละเอียดยังไง เขาบอกไว้ว่า Number of days in the given month จำนวนวันในเดือนที่ให้มา เดือนที่ให้มา ก็คือเดือนของวันที่ส่งเข้าไปเป็นพารามิเตอร์ตัวที่ 2 (เขียนก็ยังงงเอง) ดูตัวอย่างละกัน
echo date( "t", strtotime("02/13/2013") ); //28 |
อือ …
จำนวนวันทั้งหมดในเดือนนั้น มันก็คือตัวเลขของวันสุดท้าย จริงมั้ย ใครไม่เชื่อลองพิสูจน์ดูสิ
ทีนี้พอได้ความจริงข้อนี้มา ผมก็เขียนโค้ดของผมได้ว่า
if( date("d-m-Y") == date("t-m-Y") ){ //Bla Bla Bla } |
ถ้าวันปัจจุบันเท่ากับวันสุดท้ายของเดือนจริง ให้ Bla Bla Bla ส่งอีเมล์หาสมาชิกทุกคน
คลีนแอนด์เจิร์กจบอย่างสวยงาม
ออ ในลิ้งก์ข้างบนนั้นเขายังแนะวิธีไว้อีก 2-3 วิธี แต่มันก็หลักเดียวกัน ลองอ่านดูเองละกันนะ
Leave a Reply