
สวัสดีจ้าเพื่อน ๆ มีใครกำลังมองหา Function สำหรับหา วันหยุดในเดือนต่าง ๆ อยู่หรือป่าว วันนี้ ดูเพลิน เรามีตัวอย่างโค้ด สำหรับหาข้อมูลที่ว่า มาให้เพื่อน ๆ นำไปใช้กัน เรามีทั้งตัวอย่างโค้ด Function วิธีการใช้งาน และวิธีการเขียนมาให้ดูกันเลยจ้า
ตัวอย่าง PHP Function สำหรับหาวันหยุดในเดือน
Function จะรับ Parameter ตามรายการด้านล่างนี้:
- เลขลำดับวันในสัปดาห์ เริ่ม 1 = วันจันทร์ ไป จนถึง 7 = วันอาทิตย์
- เดือน
- ปี (ค.ศ)
function getListOfTheDay($dayOfTheWeek = [],$month = '1',$year = ''){ $dayOfTheWeek = empty($dayOfTheWeek) ? [1] : $dayOfTheWeek; $month = sprintf("%02d", $month); $year = empty($year) ? date('Y') : $year; $startDate = "{$year}-{$month}-01"; $endDate = date("Y-m-t", strtotime($startDate)); $dayList = [ '1' => 'Monday', '2' => 'Tuesday', '3' => 'Wednesday', '4' => 'Thursday', '5' => 'Friday', '6' => 'Saturday', '7' => 'Sunday', ]; $dateLists = []; foreach ($dayOfTheWeek as $day){ $focusDay = $dayList[$day]; for($i = strtotime($focusDay, strtotime($startDate)); $i <= strtotime($endDate); $i = strtotime('+1 week', $i)){ $dateLists[] = date('Y-m-d', $i); } } sort($dateLists); return $dateLists; }
ตัวอย่างการใช้งาน หากเราจะหาวันหยุด เสาร์ อาทิตย์ ของเดือนเมษายน ปี 2023 ก็สามารถส่งค่าตามตัวอย่างด้านล่าง [6,7] คือ ค่า Array จะอ้างอิงกับตัวแปร $dayList ของ Function getListOfTheDay();
$dateLists = getListOfTheDay([6,7],1,2023); echo "<pre>"; print_r($dateLists); echo "</pre>"; //ผลลัพธ์
Array
(
[0] => 2023-04-01
[1] => 2023-04-02
[2] => 2023-04-08
[3] => 2023-04-09
[4] => 2023-04-15
[5] => 2023-04-16
[6] => 2023-04-22
[7] => 2023-04-23
[8] => 2023-04-29
[9] => 2023-04-30
)ตัวอย่าง PHP Function สำหรับหาวันที่ของ วันจันทร์ ตามช่วงเวลาที่ระบุ
Function จะรับ Parameter ตามรายการด้านล่างนี้:
- เลขลำดับวันในสัปดาห์ เริ่ม 1 = วันจันทร์ ไป จนถึง 7 = วันอาทิตย์
- วันที่เริ่มต้น
- วันที่สิ้นสุด
function getListOfRangeDay($dayOfTheWeek = [],$startDate='',$endDate = ''){ $dayOfTheWeek = empty($dayOfTheWeek) ? [1] : $dayOfTheWeek; $startDate = empty($startDate) ? date("Y-m-d") : $startDate; $endDate = empty($endDate) ? date("Y-m-t", strtotime($startDate)) : $endDate; $dayList = [ '1' => 'Monday', '2' => 'Tuesday', '3' => 'Wednesday', '4' => 'Thursday', '5' => 'Friday', '6' => 'Saturday', '7' => 'Sunday', ]; $dateLists = []; foreach ($dayOfTheWeek as $day){ $focusDay = $dayList[$day]; for($i = strtotime($focusDay, strtotime($startDate)); $i <= strtotime($endDate); $i = strtotime('+1 week', $i)){ $dateLists[] = date('Y-m-d', $i); } } sort($dateLists); return $dateLists; }
ตัวอย่างการใช้งาน เราจะหาวันที่ของวันจันทร์ ตั้งแต่เดือน มกราคม - มีนาคม ปี 2023 ก็สามารถส่งค่าตามตัวอย่างด้านล่าง [1] คือ ค่า Array จะอ้างอิงกับตัวแปร $dayList ของ Function getListOfRangeDay();
$dateLists = getListOfRangeDay([6,7],1,2023); echo "<pre>"; print_r($dateLists); echo "</pre>"; //ผลลัพธ์
Array
(
[0] => 2023-01-02
[1] => 2023-01-09
[2] => 2023-01-16
[3] => 2023-01-23
[4] => 2023-01-30
[5] => 2023-02-06
[6] => 2023-02-13
[7] => 2023-02-20
[8] => 2023-02-27
[9] => 2023-03-06
[10] => 2023-03-13
[11] => 2023-03-20
[12] => 2023-03-27
)บทความอื่น ๆ ที่เกี่ยวข้องกับ PHP
เป็นยังไงกันบ้างคะ สำหรับบทความเรื่อง PHP Function สำหรับ หาวันที่ของวัน จากช่วงเวลาที่กำหนด หาวันหยุดในเดือนที่ระบุ ดูเพลินก็หวังว่าบทความของเราจะเป็นประโยชน์ต่อท่านไม่มากก็น้อย นอกจากนี้ เรายังมีบทความดี ๆ อีกมากมาย คุณสามารถลองคลิกเขาไปอ่านบทความอื่น ๆ ตามลิงค์ด้านล่างได้เลย

















