Cấu trúc rẽ nhánh trong PHP là một cấu trúc code block được sử dụng để thực hiện các lựa chọn dựa trên điều kiện hoặc giá trị của biến. Cũng tương tự các ngôn ngữ lập trình khác, cấu trúc này cho phép chương trình thực hiện các hành động khác nhau dựa trên điều kiện đúng hoặc sai. Hãy cùng Vietnix tìm hiểu thêm về chủ đề Cấu trúc rẽ nhánh trong PHP qua bài viết sau đây.
Cấu trúc rẽ nhánh trong PHP là gì?
Cấu trúc rẽ nhánh trong PHP là một phần quan trọng của ngôn ngữ lập trình, cho phép thực thi các lệnh hoặc hành động khác nhau dựa trên các điều kiện cụ thể. Nói cách khác, cấu trúc rẽ nhánh giúp chương trình đưa ra quyết định và chọn một trong nhiều hướng đi khác nhau tùy thuộc vào việc một điều kiện có được thỏa mãn hay không.
Dựa theo kết quả trả về của các điều kiện (True hoặc False), một hành động cụ thể sẽ được thực hiện theo yêu cầu người viết. Việc này giống như đi nhiều ngả đường, nếu bạn chọn điều A sẽ đi bên này, chọn B sẽ đi về phía kia,…
Trong PHP, bạn được cung cấp 4 dạng câu điều kiện:
- Lệnh if…
- Lệnh if…else
- Lệnh if…elseif…else
- Lệnh switch
Mọi người cũng xem:
Các kiểu hàm điều kiện trong PHP
Hàm điều kiện trong PHP – Bí quyết giúp code của bạn thông minh hơn, đưa ra quyết định linh hoạt dựa trên tình huống. Cùng khám phá các “if”, “else”, “switch case” và nhiều hơn thế nữa!
1. Lệnh if…
Người dùng sẽ thiết lập một điều kiện. Khi kết quả là True, block code nằm trong mệnh đề này sẽ được thực thi. Đây là dạng cấu trúc rẽ nhánh cơ bản và phổ biến nhất.
Cú pháp:
if (condition){
// if TRUE then execute this code
}
Ví dụ:
<?php
$x = 12;
if ($x > 0) {
echo "The number is positive";
}
?>
Output như sau:
The number is positive
2. Lệnh if…else
Tiếp tục với điều kiện được giữ nguyên, kết quả là True, block code bên trong nó sẽ được thực thi. Tuy nhiên nếu kết quả trả về không phải True và bạn cần thực hiện hành động khác? Lúc này người dùng sẽ thêm else vào. Nếu điều kiện là True, block đó sẽ bị bỏ qua, còn không thì block đó sẽ chạy thay thế.
Cú pháp:
if (condition) {
// if TRUE then execute this code
}
else{
// if FALSE then execute this code
}
Ví dụ:
<?php
$x = -12;
if ($x > 0) {
echo "The number is positive";
}
else{
echo "The number is negative";
}
?>
Output như sau:
The number is negative
Dạng câu điều kiện if...else
này được sử dụng rộng rãi vì tính bao quát của nó, có thể giúp người dùng xử lí tiếp tục các đoạn script nếu kết quả trả về không như mong muốn có thể tiếp tục sử dụng cho mục đích khác.
3. Lệnh if…elseif…else
Đây là dạng cấu trúc rẽ nhánh mở rộng của if...else
, bạn sẽ dùng đến khi script/code của bạn có nhiều điều kiện True.
Cú pháp:
if (condition) {
// if TRUE then execute this code
}
elseif {
// if TRUE then execute this code
}
elseif {
// if TRUE then execute this code
}
else {
// if FALSE then execute this code
}
Ví dụ:
<?php
$x = "September";
if ($x == "February") {
echo "Happy Lunar New Year";
}
elseif ($x == "September") {
echo "Happy Independence Day!!!";
}
else{
echo "Nothing to show";
}
?>
Output như sau:
Happy Independence Day!!!
4. Lệnh switch
Lệnh này sẽ hơi khác so với các cấu trúc rẽ nhánh trên. Lệnh switch được dùng trong nhiều trường hợp khác nhau phù hợp điều kiện, cách thực hiện cụ thể.
Đầu tiên nó sẽ đánh giá một biểu thức input, so sánh với các giá trị của từng trường hợp. Nếu phù hợp thì block code tại trường hợp đó sẽ được thực thi.
Đối với switch, bạn cần làm quen với 2 từ khóa là break
và default
:
break
– sử dụng để dừng luồng điều khiển đi vào trường hợp tiếp theo và thoát khỏi lệnh switch.default
– dùng để chứa code thực thi khác nếu không có trường hợp nào phù hợp.
Cú pháp:
switch(n) {
case statement1:
code to be executed if n==statement1;
break;
case statement2:
code to be executed if n==statement2;
break;
case statement3:
code to be executed if n==statement3;
break;
case statement4:
code to be executed if n==statement4;
break;
......
default:
code to be executed if n != any case;
Ví dụ:
<?php
$n = "February";
switch($n) {
case "January":
echo "Its January";
break;
case "February":
echo "Its February";
break;
case "March":
echo "Its March";
break;
case "April":
echo "Its April";
break;
case "May":
echo "Its May";
break;
case "June":
echo "Its June";
break;
case "July":
echo "Its July";
break;
case "August":
echo "Its August";
break;
case "September":
echo "Its September";
break;
case "October":
echo "Its October";
break;
case "November":
echo "Its November";
break;
case "December":
echo "Its December";
break;
default:
echo "Doesn't exist";
}
?>
Output như sau:
Its February
Thêm: Ternary Operators
Ngoài các dạng cấu trúc rẽ nhánh trên, PHP có một cách viết tắt if…else gọi là toán tử bậc ba.
Lệnh có sử dụng dấu “?” và dấu “:” và có 3 toán hạng: một điều kiện, một kết quả cho True và một cho False.
Cú pháp:
(condition) ? if TRUE execute this : otherwise execute this;
Ví dụ:
<?php
$x = -12;
if ($x > 0) {
echo "The number is positive \n";
}
else {
echo "The number is negative \n";
}
// This whole lot can be written in a
// single line using ternary operator
echo ($x > 0) ? 'The number is positive' :
'The number is negative';
?>
Output như sau:
The number is negative The number is negative
Lời kết
Vietnix hy vọng nội dung bài viết trên đã giúp bạn hiểu rõ hơn về Cấu trúc rẽ nhánh trong PHP, còn được gọi là câu điều kiện trong PHP. Ngoài ra, bạn cũng có thể tham khảo thêm các bài viết khác tại vietnix.vn để hiểu hơn về lập trình, chúc bạn thành công!