Việc sử dụng trường hợp chuyển đổi trong php là gì?

Câu lệnh switch được sử dụng để chọn một trong nhiều khối mã sẽ được thực thi. Đây là một thay thế cho if. elseif. Tuyên bố else

Cú pháp của switch. tuyên bố trường hợp như sau

switch (n) { case label1: code to be executed if n=label1; break; case label2: code to be executed if n=label2; break; case label3: code to be executed if n=label3; break; .. default: code to be executed if n is different from all labels; }
{ "error_message":"You need to input values for this code to run." }

Từ khóa break ngăn mã tự động chạy vào trường hợp tiếp theo. Từ khóa default được sử dụng nếu không tìm thấy kết quả phù hợp

Dưới đây là một ví dụ về công tắc. báo cáo trường hợp. Hãy thử thay đổi giá trị của $bmonth

$bmonth = "October";
switch ($bmonth) { case "January": echo "You are born in January!"; break; case "February": echo "You are born in February!"; break; case "March": echo "You are born in March!"; break; case "April": echo "You are born in April!"; break; case "May": echo "You are born in May!"; break; case "June": echo "You are born in June!"; break; case "July": echo "You are born in July!"; break; case "August": echo "You are born in August!"; break; case "September": echo "You are born in September!"; break; case "October": echo "You are born in October!"; break; case "November": echo "You are born in November!"; break; case "December": echo "You are born in December!"; break; default: echo "You are probably an alien!"; }

Bài tập

Tạo một biến tên là grade. Viết tập lệnh hiển thị elseif0 nếu grade là "A", elseif2 khi giá trị của grade là "B" và elseif4 khi giá trị là "C". Sử dụng câu lệnh switch-case. Kiểm tra mã của bạn bằng cách gán giá trị "A" cho elseif5

Trong bài viết này, chúng ta sẽ thảo luận về những điều cơ bản của câu lệnh switch trong PHP. Cùng với cú pháp của câu lệnh switch, chúng ta cũng sẽ xem qua một số ví dụ thực tế để minh họa cách bạn có thể sử dụng nó

Công dụng của câu lệnh Switch là gì?

Trong PHP, câu lệnh switch được xem như một giải pháp thay thế cho câu lệnh if-elseif-else. Thường xuyên hơn không, bạn muốn so sánh một biến với các giá trị khác nhau và dựa vào đó bạn muốn thực thi một đoạn mã. Điều đầu tiên xuất hiện trong đầu bạn là triển khai một loạt câu lệnh if-elseif-else để đạt được điều đó, như thể hiện trong đoạn mã sau

1
if ($favorite_site == 'Design') {
2
    echo "Your favorite site is design.tutsplus.com!";
3
} elseif ($favorite_site == 'Code') {
4
    echo "Your favorite site is code.tutsplus.com!";
5
} elseif ($favorite_site == 'Business') {
if ($favorite_site == 'Design') {
0
if ($favorite_site == 'Design') {
1
if ($favorite_site == 'Design') {
2
if ($favorite_site == 'Design') {
3

Nếu đó chỉ là vấn đề của hai hoặc ba điều kiện, bạn có thể triển khai nó bằng các câu lệnh if-elseif-else. Nhưng nếu bạn cần xử lý một số điều kiện và nếu bạn triển khai nó bằng các câu lệnh if-elseif-else, mã sẽ trở nên rất dài và rất khó để quản lý nó. Trong những trường hợp như vậy, lý tưởng nhất là sử dụng câu lệnh chuyển đổi và đó chính xác là mục đích mà câu lệnh chuyển đổi được thiết kế cho

Trước khi chúng ta tiếp tục và thảo luận chi tiết về câu lệnh switch, hãy nhanh chóng xem ví dụ trên trông như thế nào với câu lệnh switch

1
if ($favorite_site == 'Design') {
5_______2_______1_______7
3
if ($favorite_site == 'Design') {
9
4
2_______1
5
2_______3
if ($favorite_site == 'Design') {
0
2
5
if ($favorite_site == 'Design') {
2
2
1
2
8
2
9
    echo "Your favorite site is design.tutsplus.com!";
0
    echo "Your favorite site is design.tutsplus.com!";
1
    echo "Your favorite site is design.tutsplus.com!";
2_______2_______1_______3_______4_______1_______3

Điều đó chẳng phải trông sẽ gọn gàng và ngăn nắp hơn rất nhiều sao?

Cú pháp và ví dụ

Trong phần này, chúng ta sẽ xem qua cú pháp của câu lệnh switch và một vài ví dụ thực tế để minh họa cách bạn có thể sử dụng nó trong quá trình phát triển PHP hàng ngày của mình.

cú pháp

Hãy xem qua cú pháp của câu lệnh switch

1
    echo "Your favorite site is design.tutsplus.com!";
7
2
    echo "Your favorite site is design.tutsplus.com!";
9
3
3
1
4
3
3
5
3
5
if ($favorite_site == 'Design') {
0
3
7
if ($favorite_site == 'Design') {
2
3
9
2
8
3
5
    echo "Your favorite site is design.tutsplus.com!";
0
} elseif ($favorite_site == 'Code') {
3
    echo "Your favorite site is design.tutsplus.com!";
2
} elseif ($favorite_site == 'Code') {
5
    echo "Your favorite site is design.tutsplus.com!";
4
3
5
} elseif ($favorite_site == 'Code') {
8
} elseif ($favorite_site == 'Code') {
9
4
0
} elseif ($favorite_site == 'Code') {
9
4
2
4
3
4
4
4
5
4
6
if ($favorite_site == 'Design') {
3

Nó bắt đầu với biểu thức trong câu lệnh switch. Đầu tiên, biểu thức được đánh giá và kết quả của biểu thức được so sánh với tất cả các trường hợp theo thứ tự cho đến khi có kết quả khớp. Nếu có sự trùng khớp, mã được liên kết với trường hợp cụ thể đó sẽ được thực thi. Nếu không có kết quả khớp và có sẵn một trường hợp

2
50, nó sẽ thực thi mã đó

Điều quan trọng là bạn không được quên câu lệnh

2
51 trong mỗi trường hợp. Nếu một trường hợp khớp và không có lệnh ngắt trong trường hợp đó, mã của tất cả các trường hợp sau sẽ được thực thi, mặc dù các giá trị trường hợp không khớp

Cùng xem qua ví dụ sau để hiểu tầm quan trọng của câu lệnh break

1
4
9
2
    echo "Your favorite site is code.tutsplus.com!";
1_______4_______
if ($favorite_site == 'Design') {
5
2
1_______7
5
1_______9
if ($favorite_site == 'Design') {
0
2
1
if ($favorite_site == 'Design') {
2
2
3
2
8
2
5
    echo "Your favorite site is design.tutsplus.com!";
0
2
9
    echo "Your favorite site is design.tutsplus.com!";
2_______3_______1_______3_______4_______2_______1_______5_______8_______6_______3_______

Nếu bạn đang nghĩ rằng nó sẽ chỉ xuất ra

2
52 thì bạn đã nhầm. Nó sẽ xuất ra

1
} elseif ($favorite_site == 'Business') {
5_______2_______
} elseif ($favorite_site == 'Business') {
7

Điều này là do bạn chưa bao gồm câu lệnh

2
51 trong trường hợp thứ hai và do đó PHP sẽ thực thi mã của tất cả các trường hợp sau, bất kể giá trị của biến
2
54. Vì vậy, bạn đừng bao giờ quên câu lệnh
2
51 khi bạn đang sử dụng câu lệnh switch trong mã của mình

Cuối cùng, trường hợp

2
50 là tùy chọn; . Nó phục vụ mục đích cung cấp mã mặc định được thực thi nếu giá trị biểu thức không khớp với bất kỳ trường hợp nào

Đó là cú pháp của câu lệnh switch. Chúng ta sẽ xem một số ví dụ thực tế trong phần tiếp theo

ví dụ

Bây giờ, bạn đã quen thuộc với cú pháp của câu lệnh switch và bạn đã xem qua một số ví dụ cơ bản trong phần trước. Trong phần này, chúng ta sẽ đi qua một số ví dụ nâng cao về câu lệnh switch

Nhiều trường hợp cho cùng một khối mã

Hãy xem qua ví dụ sau

1
4
9
2
if ($favorite_site == 'Design') {
01_______4_______
    echo "Your favorite site is design.tutsplus.com!";
9
4
1_______7
5
2_______3
if ($favorite_site == 'Design') {
0
2
9
if ($favorite_site == 'Design') {
2
if ($favorite_site == 'Design') {
11
2
8
if ($favorite_site == 'Design') {
13
    echo "Your favorite site is design.tutsplus.com!";
0
if ($favorite_site == 'Design') {
15
    echo "Your favorite site is design.tutsplus.com!";
2_______1_______17_______3_______4_______1_______3_______9_______3_______

Đôi khi bạn muốn thực thi cùng một đoạn mã cho các trường hợp khác nhau. Ví dụ trên chứng minh điều đó. Trong ví dụ trên, nếu giá trị của biến

2
54 là
2
58 hoặc
2
59 hoặc
2
60, nó sẽ thực thi cùng một mã cho cả ba trường hợp này. Nếu không, nó sẽ thực thi mã được liên kết với trường hợp mặc định

Biểu thức trong câu lệnh Switch

Trong các ví dụ mà chúng ta đã thảo luận cho đến nay, chúng ta đã sử dụng một biến trong câu lệnh switch. Trên thực tế, câu lệnh switch cũng cho phép bạn sử dụng một biểu thức

Hãy xem cách bạn có thể sử dụng một biểu thức trong câu lệnh switch, như minh họa trong ví dụ sau

1
4
9
2
if ($favorite_site == 'Design') {
25
3
    echo "Your favorite site is design.tutsplus.com!";
9
4
if ($favorite_site == 'Design') {
29
5
if ($favorite_site == 'Design') {
31
if ($favorite_site == 'Design') {
0
2
1
if ($favorite_site == 'Design') {
2
if ($favorite_site == 'Design') {
35
2
8
if ($favorite_site == 'Design') {
37
    echo "Your favorite site is design.tutsplus.com!";
0
2
1
    echo "Your favorite site is design.tutsplus.com!";
2
if ($favorite_site == 'Design') {
41
    echo "Your favorite site is design.tutsplus.com!";
4
if ($favorite_site == 'Design') {
43
} elseif ($favorite_site == 'Code') {
8
2
1
4
0
if ($favorite_site == 'Design') {
47
4
2
if ($favorite_site == 'Design') {
49
4
4
2
1
4
6
if ($favorite_site == 'Design') {
53
if ($favorite_site == 'Design') {
54
if ($favorite_site == 'Design') {
55
if ($favorite_site == 'Design') {
56
2
1
if ($favorite_site == 'Design') {
58
if ($favorite_site == 'Design') {
59
if ($favorite_site == 'Design') {
60
if ($favorite_site == 'Design') {
61
if ($favorite_site == 'Design') {
62
2
1
if ($favorite_site == 'Design') {
64
if ($favorite_site == 'Design') {
65
if ($favorite_site == 'Design') {
66
if ($favorite_site == 'Design') {
67
if ($favorite_site == 'Design') {
68
2
1
if ($favorite_site == 'Design') {
70
if ($favorite_site == 'Design') {
3
if ($favorite_site == 'Design') {
72
} elseif ($favorite_site == 'Business') {
3

Đầu tiên, PHP đánh giá biểu thức trong câu lệnh switch và kết quả của biểu thức đó khớp với tất cả các trường hợp. Trong trường hợp này, câu lệnh xuất ra ngày hiện tại trong tuần

Báo cáo chuyển đổi lồng nhau

Cuối cùng, bạn cũng có thể lồng các câu lệnh chuyển đổi. Hãy xem cách nó hoạt động với ví dụ sau

1
4
9
2
if ($favorite_site == 'Design') {
77
3
    echo "Your favorite site is design.tutsplus.com!";
9
4
if ($favorite_site == 'Design') {
81
5
if ($favorite_site == 'Design') {
83
if ($favorite_site == 'Design') {
0
if ($favorite_site == 'Design') {
85
if ($favorite_site == 'Design') {
2
if ($favorite_site == 'Design') {
87
2
8
if ($favorite_site == 'Design') {
89
    echo "Your favorite site is design.tutsplus.com!";
0
if ($favorite_site == 'Design') {
91
    echo "Your favorite site is design.tutsplus.com!";
2
if ($favorite_site == 'Design') {
93
    echo "Your favorite site is design.tutsplus.com!";
4
if ($favorite_site == 'Design') {
95
} elseif ($favorite_site == 'Code') {
8
if ($favorite_site == 'Design') {
91
4
0
if ($favorite_site == 'Design') {
99
4
2
2
1
4
4
2
03
4
6
if ($favorite_site == 'Design') {
83
if ($favorite_site == 'Design') {
54
if ($favorite_site == 'Design') {
85
if ($favorite_site == 'Design') {
56
if ($favorite_site == 'Design') {
87
if ($favorite_site == 'Design') {
58
2
11
if ($favorite_site == 'Design') {
60
if ($favorite_site == 'Design') {
91
if ($favorite_site == 'Design') {
62
2
15
if ($favorite_site == 'Design') {
64
2
17
if ($favorite_site == 'Design') {
66
if ($favorite_site == 'Design') {
91
if ($favorite_site == 'Design') {
68
if ($favorite_site == 'Design') {
99
if ($favorite_site == 'Design') {
70
2
1
if ($favorite_site == 'Design') {
72
2
25
2
26
if ($favorite_site == 'Design') {
83
2
28
if ($favorite_site == 'Design') {
85
2
3

Như bạn có thể thấy, việc sử dụng một câu lệnh switch bên trong một câu lệnh switch khác là hoàn toàn hợp lệ. Tuy nhiên, bạn nên cố gắng tránh điều này, vì nó làm cho mã của bạn khó đọc và khó bảo trì hơn.

Phần kết luận

Hôm nay, chúng ta đã thảo luận về cách bạn có thể sử dụng câu lệnh switch trong PHP. Đó là một tính năng ngôn ngữ thực sự hữu ích cho phép bạn đơn giản hóa các câu lệnh if-elseif-else dài dòng và giữ cho mã của bạn rõ ràng và dễ đọc

Việc sử dụng trường hợp chuyển đổi là gì?

Câu lệnh chuyển trường hợp đánh giá một biểu thức đã cho và dựa trên giá trị được đánh giá (khớp với một điều kiện nhất định), nó thực thi các câu lệnh liên quan đến nó. Về cơ bản, nó được sử dụng để thực hiện các hành động khác nhau dựa trên các điều kiện (trường hợp) khác nhau .

Khi nào sử dụng switch trong PHP?

Câu lệnh switch tương tự như một loạt các câu lệnh IF trên cùng một biểu thức. Trong nhiều trường hợp, bạn có thể muốn so sánh cùng một biến (hoặc biểu thức) với nhiều giá trị khác nhau và thực thi một đoạn mã khác tùy thuộc vào giá trị mà nó tương đương với. This is exactly what the switch statement is for.

Chúng ta có thể sử dụng trường hợp chuyển đổi trong PHP không?

Câu lệnh switch tương tự như chuỗi câu lệnh if-else. Câu lệnh switch thực hiện trong nhiều trường hợp khác nhau. e. nó có nhiều trường hợp phù hợp với điều kiện và thực thi một cách thích hợp khối trường hợp cụ thể .

Điều nào sau đây là việc sử dụng chức năng chuyển đổi trong PHP?

Câu lệnh chuyển đổi PHP được sử dụng để thực hiện một câu lệnh từ nhiều điều kiện . Nó hoạt động giống như câu lệnh if-else-if của PHP.