Chúng ta có thể viết điều kiện trong trường hợp chuyển đổi trong PHP không?
Trong bài viết trước, chúng ta đã thảo luận về câu lệnh if, trong đó nói rằng bạn có thể có nhiều câu lệnh otherif khác nhau nếu bạn muốn xử lý nhiều tình huống khác nhau, nhưng đã đến lúc bạn nên cân nhắc chuyển sang câu lệnh switch Show
Điều này có thể được viết lại bằng cách sử dụng câu lệnh chuyển đổi. Mỗi điều kiện bạn muốn khớp có một trường hợp bạn chuyển vào biến bạn muốn khớp. Trong trường hợp, bạn đặt mã bạn muốn chạy nếu điều kiện phù hợp. Sau đó, bạn cần thêm dấu ngắt, nếu không mã sẽ tiếp tục kiểm tra các kết quả khớp trong phần còn lại của câu lệnh chuyển đổi
trường hợp mặc địnhMột tính năng rất hữu ích của câu lệnh switch là cho phép mặc định nếu không có trường hợp nào khác phù hợp. Đôi khi bạn không biết biến sẽ là gì và nó cho phép bạn nắm bắt trường hợp cạnh này. Bạn thậm chí có thể sử dụng nó để đưa ra một ngoại lệ nhằm cố tình ngăn chặn bất kỳ mã nào đang chạy tiếp theo
Khớp nhiều trường hợpĐôi khi bạn muốn làm điều tương tự cho nhiều trường hợp phù hợp. Nếu bạn sử dụng câu lệnh if, bạn sẽ cần lặp lại mã nhiều lần hoặc sử dụng hoặc (
Trong một câu lệnh chuyển đổi, bạn có thể thực hiện điều này một cách dễ dàng bằng cách liệt kê lần lượt nhiều trường hợp, sau đó thêm mã của bạn để chạy với dấu ngắt sau đó;
Trở về từ trường hợp chuyển đổiĐôi khi bạn không cần nghỉ trong câu lệnh switch. Đây là khi bạn trực tiếp quay lại từ câu lệnh switch. Ví dụ dưới đây có một câu lệnh switch trong một hàm, trả về kết quả từ trường hợp phù hợp
Tôi biết rằng một số nhà phát triển (chẳng hạn như tôi) nghĩ rằng có vẻ lạ khi không có các dấu ngắt trong câu lệnh chuyển đổi vì thật tuyệt khi chia nhỏ mã cú pháp thay thếCũng giống như câu lệnh if, bạn cũng có thể sử dụng dấu hai chấm thay cho dấu ngoặc và kết thúc chuyển đổi bằng endwitch
Bạn cũng có thể sử dụng dấu chấm phẩy thay vì dấu hai chấm sau trường hợp nếu bạn muốn Thay vào đó, hãy sử dụng một MảngMột số người không thích sử dụng câu lệnh chuyển đổi vì chúng có vẻ hơi dài dòng. Có một giải pháp thay thế tiềm năng bằng cách sử dụng một mảng để cung cấp các tùy chọn nếu đó là một kịch bản đơn giản
Cách trên sẽ hoạt động tốt với màu đỏ, xanh lá cây hoặc xanh dương, nhưng nếu đó là màu không xác định, chẳng hạn như màu cam, thì bạn sẽ gặp phải lỗi chỉ mục không xác định Bạn có thể sử dụng toán tử hợp nhất null (PHP 7. 0 trở đi) để bắt lỗi này và trả về phản hồi mặc định ________số 8 Trận đấuPHP8. 0 đã giới thiệu câu lệnh đối sánh. Nó cung cấp cú pháp ngắn hơn và nó trả về một giá trị. Có một bài viết tuyệt vời về sự khác biệt giữa khớp và bật máy khâu. io của Brent Giá trị của n sẽ được kiểm tra với từng giá trị nhãn trường hợp và (các) câu lệnh của khối trường hợp sẽ được thực thi khi giá trị của nhãn trường hợp khớp với n. Câu lệnh break được sử dụng để kết thúc khối chuyển đổi nếu tìm thấy kết quả khớp Điều kiện tiên quyếtCác tập lệnh được sử dụng trong các ví dụ của hướng dẫn này được viết dựa trên phiên bản PHP 8. Thực hiện tác vụ sau trước khi thực hiện các ví dụ về tập lệnh này
Các cách sử dụng khác nhau của câu lệnh SwitchCác cách sử dụng khác nhau của câu lệnh switch trong PHP đã được trình bày trong phần này của hướng dẫn này bằng cách sử dụng nhiều ví dụ Ví dụ 1. Công tắc sử dụng đơn giản. báo cáo trường hợpTạo một tệp PHP với tập lệnh sau để kiểm tra việc sử dụng đơn giản câu lệnh 'switch'. Ở đây, biến $found được dùng để kiểm tra biến $book_name có khớp với bất kỳ giá trị kiểu chữ nào hay không ?php đầu ra Đầu ra sau sẽ xuất hiện sau khi thực hiện đoạn mã trên. Ở đây, tên tệp là switch1. php được lưu trữ bên trong thư mục /var/www/html/code http. // localhost/mã/switch1. php Ví dụ-2. Sử dụng nhiều câu lệnh tình huống cùng nhauTạo một tệp PHP với tập lệnh sau để kiểm tra cách sử dụng câu lệnh 'switch' bằng cách kết hợp nhiều câu lệnh tình huống. Tại đây, giá trị của $ID sẽ được gán bằng cách đọc tham số truy vấn URL có tên ‘id’. Giá trị của $ID sẽ được kiểm tra bởi switch. câu lệnh tình huống sau để tạo đầu ra //Kiểm tra xem giá trị ID có được chuyển vào URL hay chưa đầu ra Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trên mà không có bất kỳ tham số truy vấn nào. Ở đây, tên tệp là switch2. php được lưu trữ bên trong thư mục /var/www/html/code http. // localhost/mã/switch2. php Đầu ra sau sẽ xuất hiện sau khi thực thi đoạn mã trên với tham số truy vấn có tên là “id” và giá trị là “07895” khớp với khối chữ cái đầu tiên http. // localhost/mã/switch2. php?id=07895 Đầu ra sau sẽ xuất hiện sau khi thực thi đoạn mã trên với tham số truy vấn có tên là “id” và giá trị là “01907” khớp với khối trường hợp thứ ba http. // localhost/mã/switch2. php?id=01907 Ví dụ-3. Sử dụng toán tử logic 'OR' trong switch. báo cáo trường hợpTạo một tệp PHP với tập lệnh sau để kiểm tra cách sử dụng câu lệnh 'switch' trong đó câu lệnh 'case' được xác định bởi toán tử logic OR. Tại đây, giá trị của $name sẽ được gán bằng cách đọc tham số truy vấn URL có tên ‘name’. Giá trị của $name sẽ được kiểm tra bởi nút ‘switch. case' sau để tạo đầu ra ?php đầu ra Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trên với tham số truy vấn có tên là “tên” và giá trị, “riya”. Ở đây, tên tệp là switch3. php được lưu trữ bên trong thư mục /var/www/html/code http. // localhost/mã/switch3. php?name=riya Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trên với tham số truy vấn có tên là “tên” và giá trị, “karim” http. // localhost/mã/switch3. php?name=karim Ví dụ-4. Sử dụng mảng trong switch. báo cáo trường hợpTạo một tệp PHP với tập lệnh sau để kiểm tra cách sử dụng câu lệnh 'switch' trong đó câu lệnh 'case' được xác định mảng cụ thể. Ở đây, ba mảng đã được khai báo trong tập lệnh với ba loại giá trị. giá trị của $var sẽ được chỉ định bằng cách đọc tham số truy vấn URL có tên 'var'. Giá trị của $var sẽ được kiểm tra bởi nút ‘switch. case’ sau bằng cách sử dụng vòng lặp để tạo đầu ra ?php phá vỡ; //Check in the second array case in_array($val, $array2) : tiếng vọng " "exists in the second array."; ngắt; //Check in the third array case in_array($val, $array3) : tiếng vọng " "exists in the third array."; ngắt; default: echo """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""; } đầu ra Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trên với tham số truy vấn có tên là “var” và giá trị “32”. Ở đây, tên tệp là switch4. php được lưu trữ bên trong thư mục /var/www/html/code http. // localhost/mã/switch4. php?var=32 Đầu ra sau sẽ xuất hiện sau khi thực thi đoạn mã trên với tham số truy vấn có tên là “var” và giá trị “2. 9” http. // localhost/mã/switch4. php?var=2. 9 Đầu ra sau sẽ xuất hiện sau khi thực thi tập lệnh trên với tham số truy vấn có tên là “var” và giá trị là “pencil” http. // localhost/mã/switch4. php?var=bút chì Phần kết luậncông tắc. câu lệnh tình huống là một câu lệnh điều kiện hữu ích cho nhiều tác vụ lập trình. Cách kiểm tra giá trị của biến đơn giản, sử dụng toán tử logic với biến và sử dụng mảng với biến trong switch. câu lệnh tình huống đã được mô tả trong hướng dẫn này Chúng ta có thể sử dụng điều kiện trong chuyển đổiVì vậy, trong hướng dẫn này, chúng ta đã học cách có thể cung cấp nhiều điều kiện trong trường hợp chuyển đổi trong PHP bằng cách sử dụng toán tử OR để chúng ta có thể xác định . Nếu bạn có một số usecase cụ thể, vui lòng chia sẻ với chúng tôi trong phần bình luận bên dưới.
Chúng ta có thể sử dụng điều kiện trong chuyển đổiTrong câu lệnh switch, chúng ta chuyển một biến đang giữ giá trị trong câu lệnh. Nếu điều kiện khớp với giá trị, mã theo điều kiện sẽ được thực thi . Điều kiện được biểu thị bằng trường hợp từ khóa, theo sau là giá trị có thể là ký tự hoặc số nguyên. Sau đây là dấu hai chấm.
Loại nào không được phép trong switchCâu lệnh switch không chấp nhận đối số loại long, float, double, boolean hoặc bất kỳ đối tượng nào ngoài Chuỗi .
Bạn có thể sử dụng && trong công tắc khôngKhông, bạn không thể làm điều gì đó như case val_1 && val_2 . báo cáo trường hợp chỉ chấp nhận một giá trị duy nhất. |