A-AA+then

เกี่ยวกับการหาวัน

2,269

ต้องการหาวันที่ในเดือนถ้าเรารู้วัน เช่น วันนี้(3 พย. 51) เป็นวันจันทร์ แล้วต้องการทราบว่า วันจันทร์แรกของเดือนถัดไป(ธค.) เป็นวันที่เท่าไหร่ ต้องใช้ function อะไรครับ มี function ที่เป็น มาตฐาน เหรอป่าวครับ
ขอบคุณครับ
 

3 ความคิดเห็น

ฟังก์ชั่น date มีรายละเอียดค่อนข้างมากครับ ลองดูตัวอย่างได้ที่ http://th.php.net/date ครับ อาจต้องประยุกต์นิดหน่อย เนื่องจากอาจไม่มีคำสั่งเฉพาะตามที่ต้องการ

trick อย่างหนึ่งของวันที่บน php คือ วันที่ในรูปแบบ mktime ครับ ลองใช้คำสั่งในรูปนี้ดู เช่น แปลงวันที่ ที่ต้องการเป็น mktime ค่อน แล้วค่อยแปลงกลับครับ

ยกตัวอย่าง

<?php
$tomorrow  = mktime(0, 0, 0, date("m")  , date("d")+1, date("Y"));// เมื่อวานนี้
echo date( 'd-m-y' , $tomorrow ).'<br />';
$lastmonth = mktime(0, 0, 0, date("m")-1, date("d"),   date("Y")); // วันนี้เมื่อเดือนที่แล้ว
echo date( 'd-m-y' , $lastmonth ).'<br />';
$nextyear  = mktime(0, 0, 0, date("m"),   date("d"),   date("Y")+1); // วันนี้เมื่อปีที่แล้ว
echo date( 'd-m-y' , $nextyear );
?>
1

ขอถามหน่อยครับสงสัยอะครับ
ทำไมต้องแปลงวันที่โดยใช้ฟังก์ชัน mktime อะครับ
เพราะ ผมเขียนไม่เคยแปลงเลย ใช้โดยตรงจากฟังก์ชัน date() เลยอะครับ
2

ค่าที่ได้จากฟังก์ชั่น date เป็น string ซึ่งเอาไว้ใชแสดงผลเท่านั้น ส่วนค่าที่ได้จาก mktime เป็นตัวเลข ซึ่งสามารถนำไปใช้คำนวณต่อได้ ครับ
3
^