วันพุธที่ 1 พฤศจิกายน พ.ศ. 2560

2.4.2 การตรวจสอบเงื่อนไข


การตรวจสอบเงื่อนไข


                ภาษาเขียนโปรแกรมส่วนมากแล้วย่อมจะมีการกำหนดเงื่อนไข และการเปลี่ยนทิศทางการทำงานของตัวโปรแกรม ทำให้สามารถสร้างทางเลือกการตัดสินใจในการทำงานของโปรแกรมได้หลากหลาย โดยที่ PHP จะสนับสนุนการทำงานตรงจุดนี้ด้วยคำสั่ง if
สร้างทางเลือกด้วยคำสั่ง if
                คำสั่ง if ใช้ในการตรวจสอบนิพจน์ที่เรากำหนดขึ้น ถ้าตรวจสอบแล้วนิพจน์มีค่าเป็นจริง โปรแกรมก็จะทำงานภายใต้โค้ดที่ใช้ในการประมวลผล ดังรูปแบบของคำสั่ง if ดังนี้

รูปแบบ

If (นิพจน์)
                {                                                                                                                                           
                                //โค้ดที่ใช้ในการประมวลผล หลังตรวจสอบนิพจน์แล้วมีค่าเท่ากับ True       
                }
ตัวอย่าง การใช้งานคำสั่ง if
                <?php
                $a = “kitisak”;
                If ($a = “kitisak” )
                {
                                Print “I am Kitisak.”;
                }
                ?>
                จากตัวอย่าง จะเห็นว่าเป็นการเปรียบเทียบระหว่างตัวแปร $a กับข้อความ “kitisak”  โดยใช้ตัวดำเนินการในการเปรียบเทียบ คือ = =
                if  ($a = = “kitisak” )
                {
                                Print “I am Kitisak.”;
                }
                สังเกตว่าค่าของนิพจน์นี้จะมีค่าเป็นจริง (true) เนื่องจากตัวแปร $a มีค่าเท่ากับ “kitisak”   ดังนั้นโปรแกรมก็จะแสดงข้อความว่า “I am Kitisak.” แต่ถ้านิพจน์นี้มีค่าเป็นเท็จ (false) โปรแกรมจะออกจากคำสั่ง if ข้ามมาทำงานในคำสั่งถัดไป
เงื่อนไข else
                จากตัวอย่างข้างต้น ถ้านิพจน์เกิดมีค่าเป็นเท็จ (false) ขึ้นมา สามารถใช้ else เข้ามาทำงานร่วมกับ if ได้โดยที่บอกว่า จะให้ทำอะไรต่อไปถ้านิพจน์นั้นมีค่าเป็นเท็จ ดังรูปแบบของคำสั่ง if…else…ดังนี้
รูปแบบ
                If (นิพจน์)
                                {
                                                //โค้ดที่ใช้ในการประมวลผล
                                                //หลังตรวจสอบนิพจน์แล้วมีค่าเท่ากับ true
                                }
                Else
                                {
                                                //โค้ดที่ใช้ในการประมวลผล
                                                //ในกรณีที่นิพจน์มีค่าเท่ากับ false
                                }
ตัวอย่าง การใช้งาน else
                <?php
                $a = “pakpoom”
                if ($a = = “kitisak” )
                                {
                                                print “I am Kitisak.”;
                                }
                else
                                {
                                                print “Who are you?”;
                                }
                ?>
                จากตัวอย่าง สังเกตว่าค่าของนิพจน์ที่ได้นั้นเป็นเท็จ (false) เนื่องจากตัวแปร $a มีค่าเท่ากับ “pakpoom” ดังนั้นโปรแกรมก็จะทำงานในส่วนของโค้ดที่ใช้ในการประมวลผลหลัง else คือจะแสดงข้อความว่า “Who are you?”;
เงื่อนไข elseif
                ในกรณีที่มีนิพจน์มากกว่า 1 ขึ้นไป เราจะใช้ elseif เข้ามาทำการตรวจสอบนิพจน์นั้น ดังรูปแบบนี้
รูปแบบ
                if  (นิพจน์1)
                                {
                                                //โค้ดที่ใช้ในการประมวลผล
                                                //หลังตรวจสอบนิพจน์ 1 แล้วมีค่าเท่ากับ True
                                }
                elseif (นิพจน์2)
                                {
                                                //โค้ดที่ใช้ในการประมวลผล
                                                //หลังตรวจสอบนิพจน์ 2 แล้ว มีค่าเท่ากับ True
                                }
                else
                                {
                                                //โค้ดที่ใช้ในการประมวลผล ในกรณีที่นิพจน์ทั้งหมดมีค่าเท่ากับ False
                                }
ตัวอย่าง การใช้งาน elseif
                <?php
                $a = “lay”;
                if ($a = = “kitisak” )
                                {
                                                print “I am Kitisak.”;
                                }
                elseif ( $a = = “lay” )
                                }
                                                print “I am Lay.”;
                                }
                else
                                {
                                                print “Who are you?”;
                                }
                ?>
               จากตัวอย่างการใช้งาน elseif ถ้านิพจน์แรก ($a = = “kitisak” ) ไม่เป็นจริง (false) โปรแกรมจะทำการตรวจสอบนิพจน์ถัดไปคือ ( $a = = “lay” ) อีกครั้งหนึ่ง ถ้าเป็นจริง (true) โปรแกรมก็จะทำงานในส่วนของโค้ดที่ใช้ในการประมวลผลหลัง elseif ผลลัพธ์ที่ได้จากตัวอย่างก็คือ พิมพ์คำว่า  “I am Lay.”
สร้างทางเลือกด้วยคำสั่ง switch
                คำสั่ง switch จะใช้ในการสร้างทางเลือกที่หลากหลาย คล้ายกับ if แต่จะเลือกเพียงหนึ่งทางเลือกออกมาทำงานโดยค่าผลลัพธ์ที่ได้จากการตรวจสอบนิพจน์นั้นจะอยู่ในรูปของ Boolean คือ true or false
รูปแบบ
                switch (นิพจน์)
                                {
                                case choice 1:
                                                //นิพจน์ที่ใช้ประมวลผล เมื่อเงื่อนไขตรงกับ choice1
                                                break:
                                case choice 2:
                                                //นิพจน์ที่ใช้ประมวล เมื่อเงื่อนไขตรงกับ choice 2
                                                Break:
                                default:
                                                //นิพจน์ที่ใช้ประมวลผล เมื่อเงื่อนไขไม่ตรงกับ choice ใด ๆ เลย
                                }
ตัวอย่าง การใช้งาน switch
                <?php
                $name = “beer”;
                switch ( $name )
                                {
                                case “beer”:
                                                echo “เว็บมาสเตอร์
                                                break;
                                case “bom”:
                                                echo “โปรแกรมเมอร์
                                                break;
                                case “lay”:
                                                echo “วิศวกรระบบ
                                                break;
                                default:
                                                echo คุณเป็นใครกันครับ
                                }
                ?>
                จากตัวอย่าง ผลลัพธ์ที่ได้ คือ คำว่า เว็บมาสเตอร์ เนื่องจากเรากำหนดให้ตัวแปร $name มีค่าเท่ากับ beer เมื่อทำการตรวจสอบเงื่อนไขแล้วจะตรงกับ case “beer”: จากนั้นจึงทำตามนิพจน์ที่อยู่ภายในจนกว่าจะพบกับคำสั่ง break ถึงจะหยุดการทำงาน และหลุดออกจาก switch มาทำงานในคำสั่งถัดไป
สร้างทางเลือกด้วยตัวดำเนินการ?
                ?  เป็นตัวดำเนินการที่ใช้ในการตรวจสอบเงื่อนไขคล้าย ๆ กับคำสั่ง if จะต่างกันก็ตรงที่มันส่งค่ากลับคืนมาได้เพียง 2 ค่าเท่านั้น คือ ถ้าเป็นจริงจะให้ทำอะไรหรือถ้าเป็นเท็จจะให้ทำอะไรโดยมีเครื่องหมาย : (colon) เป็นตัวคั่นระหว่าง ค่าที่จะส่งกลับมาระหว่าง จริง:เท็จ ซึ่งจะมีลักษณะคล้ายกับคำสั่ง iif ของภาษา Visual Basic


               

               

               



                

ไม่มีความคิดเห็น:

แสดงความคิดเห็น