โจทย์ข้อนี้จะเป็นการแนะนำเรื่องการใช้ตัวแปร และฟังก์ชั่นสำหรับแก้โจทย์ปัญหาที่ให้มานี้ ถ้าดูจากรูป จะเห็น วันที่, กล่อง สี่ใบ ซึ่งจะเป็ฯคนละสี และของสี่อย่างที่อยู่ในกล่องแต่ละใบ
การประกาศตัวแปร
จะประกอบด้วยตัวแปรที่ใช้แทนวันที่ปัจจุบัน และตัวแปรที่ใช้แทนกล่องแต่ละใบ
<?php $today = ''; $redBox = ''; $yellowBox = ''; $greenBox = ''; $blueBox = ''; ?>
การเขียนโค๊ด PHP แบบที่ 1
ตรวจสอบเงื่อนไขวันที่ด้วย if...else
ในแต่ละวันจะต้องย้ายของในกล่อง ให้ตรงกับสี ซึ่งกำหนดไว้สี่วันด้วยกัน คือ
วันที่ 10 มี.ค. 2556
- นำ Cat ใส่ลงในกล่องสีแดง
- นำ Rat ใส่กล่องสีเหลือง
- นำ Bat ใส่กล่องสีเขียว
- นำ Hat ใส่กล่องสีฟ้า
<?php if( $today == '2013-03-10'){ $redBox = 'Cat'; $yellowBox = 'Rat'; $greenBox = 'Bat'; $blueBox = 'Hat'; } ?>
วันที่ 11 มี.ค. 2556
ให้เลื่อนของแต่ละชิ้นไปยังกล่องถัดไป ซึ่ง Cat จะไปอยู่ในกล่องสีเหลือง
<?php if( $today == '2013-03-10'){ //................ } else if( $today == '2013-03-11'){ $redBox = 'Hat'; $yellowBox = 'Cat'; $greenBox = 'Rat'; $blueBox = 'Bat'; } ?>
ให้เลื่อนของแต่ละชิ้นไปยังกล่องถัดไป ซึ่ง Cat จะไปอยู่ในกล่องสีเขียว
<?php if( $today == '2013-03-10'){ //................ } else if( $today == '2013-03-11'){ //................ } else if( $today == '2013-03-12'){ $redBox = 'Bat'; $yellowBox = 'Hat'; $greenBox = 'Cat'; $blueBox = 'Rat'; } ?>
วันที่ 13 มี.ค. 2556
ให้เลื่อนของแต่ละชิ้นไปยังกล่องถัดไป ซึ่ง Cat จะไปอยู่ในกล่องสีฟ้า
<?php if( $today == '2013-03-10'){ //................ } else if( $today == '2013-03-11'){ //................ } else if( $today == '2013-03-12'){ //................ } else if( $today == '2013-03-13'){ $redBox = 'Rat'; $yellowBox = 'Bat'; $greenBox = 'Hat'; $blueBox = 'Cat'; } ?>
เราสามารถเรียกดูผลลัพธ์โดยการกำหนด $today ให้เป็นวันทึ่ต่างๆ
แล้วลองใช้คำสั่ง echo ดูผลลัพธ์ที่ได้
<?php $today = '2013-03-12';//กำหนดวันที่ if( $today == '2013-03-10'){ $redBox = 'Cat'; $yellowBox = 'Rat'; $greenBox = 'Bat'; $blueBox = 'Hat'; } else if( $today == '2013-03-11'){ $redBox = 'Hat'; $yellowBox = 'Cat'; $greenBox = 'Rat'; $blueBox = 'Bat'; } else if( $today == '2013-03-12'){ $redBox = 'Bat'; $yellowBox = 'Hat'; $greenBox = 'Cat'; $blueBox = 'Rat'; } else if( $today == '2013-03-13'){ $redBox = 'Rat'; $yellowBox = 'Bat'; $greenBox = 'Hat'; $blueBox = 'Cat'; } echo 'จากโค๊ด เมื่อเปลี่ยนค่าของตัวแปร $today ให้ตรงกับวันที่ในเงื่อนไข if else ก็จะเห็นค่าที่อยู่ในกล่องแต่ละกล่องเปลี่ยนไปตามวันที่ทีเราต้องการ หากวันที่ไม่ตรงกับเงื่อนไขที่กำหนด ก็จะไม่มีการขนย้ายสิ่งของใส่กล่อง ภายในกล่องก็จะว่างเปล่า'; echo 'กล่องสีแดง => '. $redBox ."\n"; echo 'กล่องสีเหลือง => '. $yellowBox ."\n"; echo 'กล่องสีเขียว => '. $greenBox ."\n"; echo 'กล่องสีฟ้า => '. $blueBox ."\n"; echo ''; ?>
______________________ การเขียนโค๊ด PHP แบบที่ 2 _____________________________
ตรวจสอบเงื่อนไขวันที่ด้วย switch_case (อย่าลืมติด break; ด้วยนะครับ)
<?php $today = '2013-03-12';//กำหนดวันที่ switch( $today ){ case '2013-03-10': $redBox = 'Cat'; $yellowBox = 'Rat'; $greenBox = 'Bat'; $blueBox = 'Hat'; break; case '2013-03-11': $redBox = 'Hat'; $yellowBox = 'Cat'; $greenBox = 'Rat'; $blueBox = 'Bat'; break; case '2013-03-12': $redBox = 'Bat'; $yellowBox = 'Hat'; $greenBox = 'Cat'; $blueBox = 'Rat'; break; case '2013-03-13': $redBox = 'Rat'; $yellowBox = 'Bat'; $greenBox = 'Hat'; $blueBox = 'Cat'; break; } echo ''; echo 'กล่องสีแดง => '. $redBox ."\n"; echo 'กล่องสีเหลือง => '. $yellowBox ."\n"; echo 'กล่องสีเขียว => '. $greenBox ."\n"; echo 'กล่องสีฟ้า => '. $blueBox ."\n"; echo ''; ?>
แบบที่ 2 นี้จะเขียนโค๊ด PHP ได้สบายตา ดูเป็นระเบียบดีกว่าแบบแรก
ประกาศตัวแปร Array ตามวันที่และเรียกใช้ตามชื่อกล่อง
<?php $arrayBox = array(); $arrayBox['2013-03-10'] = array( 'red'=>'Cat', 'yellow'=>'Rat', 'green'=>'Bat', 'blue'=>'Hat' ); $arrayBox['2013-03-11'] = array( 'red'=>'Hat', 'yellow'=>'Cat', 'green'=>'Rat', 'blue'=>'Bat' ); $arrayBox['2013-03-12'] = array( 'red'=>'Bat', 'yellow'=>'Hat', 'green'=>'Cat', 'blue'=>'Rat' ); $arrayBox['2013-03-13'] = array( 'red'=>'Rat', 'yellow'=>'Bat', 'green'=>'Hat', 'blue'=>'Cat' ); $today = '2013-03-12';//กำหนดวันที่ echo ''; echo 'กล่องสีแดง => '. $arrayBox[$today]['red'] ."\n"; echo 'กล่องสีเหลือง => '. $arrayBox[$today]['yellow'] ."\n"; echo 'กล่องสีเขียว => '. $arrayBox[$today]['green'] ."\n"; echo 'กล่องสีฟ้า => '. $arrayBox[$today]['blue'] ."\n"; echo ''; ?>
ความคิดเห็น
แสดงความคิดเห็น