วันอาทิตย์ที่ 25 มิถุนายน พ.ศ. 2560

การใช้เงื่อนไขการตัดสินใจ PHP (if else ,switch)

ไม่มีความคิดเห็น
การใช้เงื่อนไขการตัดสินใจ PHP  (if else ,switch)
วันนี้เราจะมาพูดถึงการใช้เงื่อนไขการตัดสินใจ PHP Condition กันหน่อยนะครับ กรณีทีเรามีค่าอยู่แล้วต้องการเปรียบเทียบมันเราจำเป็นต้องมีตัวตรวจสอบมัน อาทิ นาย ก มีเงิน 20 นาย ข มีเงิน 100 อยากทราบว่า ใครมีเงินมากกว่ากัน นี่ละครับเราจำเป็นต้องใช้เจ้าตัว PHP Condition ซึ่งการใช้งานก็มีหลายแบบ แล้วแต่สิ่งที่เราจะตรวจสอบนั้นเอง ผมมีตัวอย่างง่ายๆมีให้ดูกันลองทำตามดูนะครับ

การใช้เงื่อนไข if

เปรียบเทียบค่า a และ b

เขียนแบบที่ 1
<?php
$a=2;
$b=0;

if($a > $b)
  echo "a is bigger than b";

?>
 เขียนแบบที่ 2
 <?php
$a=2;
$b=0;
if($a > $b)
{
echo "a is bigger than b";
}
?>
เขียนแบบที่ 3 (short if)
<?php
$a=2;
$b=0;
echo ($a>$b)?"a is bigger than b":"";
?>
ผลลัพธ์
a is bigger than b
การใช้เงื่อนไข if else

ตัวอย่างการเขียน if else อย่างง่าย กรณีหากเราต้องการเปรียบเทียบเงื่อนไข 2 อย่าง ยกตัวอย่างเช่น ในระบบฐานข้อมูลกำหนด เพศ เป็น m กับ f แต่ในหน้าแสดงผลอยากให้แสดงเป็น ชาย หรือ หญิง เพราะฉะนั้น เราจึงต้องกำหนดเงื่อนไขในส่วนของ PHP ดังตัวอย่าง

เขียนแบบที่ 1
<?php
$gender = "f";
if($gender == "f")
echo "ชาย";
else
echo "หญิง";
?>
เขียนแบบที่ 2
<?php
$gender = "f";
if($gender == "f")
{
  echo "ชาย";
}
else
{
  echo "หญิง";
}
?>

เขียนแบบที่ 3 (short if)
<?php
$gender = "f";
echo ($gender == "f")?"ชาย":"หญิง";
?>

ผลลัพธ์
ชาย
การใช้เงื่อนไขหลายเงื่อนไข if else if

จะใช้ในกรณีที่มีการเช็คเงื่อนไขมากกว่า 1 เงื่อนไข ตัวอย่างเช่น ถ้าต้องการนำคะแนนมาตัดเป็นเกรด A ถึง E โดยคะแนนเต็ม 100 ต้องมีการเช็คเงื่อนไขของช่วงคะแนนที่ต่างกัน ตัวอย่างการใช้ if else if ด้านล่างเลยครับ

การตัดเกรดแบบ 8 เกรด
80-100         คะแนน                   เกรด A
75-79           คะแนน                   เกรด B+
70-74           คะแนน                   เกรด B
65-69           คะแนน                   เกรด C+
60-64           คะแนน                   เกรด C
55-59           คะแนน                   เกรด D+
50-54           คะแนน                   เกรด D
0-49             คะแนน                   เกรด E


เขียบแบบที่ 1
<?php
//your score
$myScore = 38;
if($myScore >= 80)
echo "A";
else if($myScore >= 75)
echo "B+";
else if($myScore >= 70)
echo "B";
else if($myScore >= 65)
echo "C+";
else if($myScore >= 55)
echo "D+";
else if($myScore >= 50)
echo "D";
else
echo "F";
?>
เขียบแบบที่ 2
<?php
//your scroe
$myScore = 38;
if($myScore >= 80)
{
echo "A";
}
else if($myScore >= 75)
{
echo "B+";
}
else if($myScore >= 70)
{
echo "B";
}
else if($myScore >= 65)
{
echo "C+";
}
else if($myScore >= 55)
{
echo "D+";
}
else if($myScore >= 50)
{
echo "D";
}
else
{
echo "F";
}
?>
ผลลัพธ์
F
เมื่อทดสอบเปลี่ยน $myScore = 78;
ผลลัพธ์
B+
การใช้เงื่อนไข switch case
ตัวอย่างคือการกำหนดค่าสีมา 1 ค่าแล้วใช้ switch ในการตรวจสอบ ตัวอย่างเช่น
<?php
$favcolor = "red";
switch ($favcolor) {
    case "red":
        echo "Your favorite color is red!";
        break;
    case "blue":
        echo "Your favorite color is blue!";
        break;
    case "green":
        echo "Your favorite color is green!";
        break;
    default:
        echo "Your favorite color is neither red, blue, nor green!";
}
?>
ในตัวอย่างเราได้กำหนด  $favcolor ให้เท่ากับ red เมื่อเข้าเงื่อนไข จะได้ผลลัพธ์ดังนี้
ผลลัพธ์
Your favorite color is red!
แล้วถ้าเปลี่ยนจาก  $favcolor = "red" เป็น  $favcolor = "blue"
ผลลัพธ์
Your favorite color is blue!
แล้วถ้าเปลี่ยนจาก  $favcolor = "red" เป็น  $favcolor = "black"
ผลลัพธ์
Your favorite color is neither red, blue, nor green!

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

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

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