Câu lệnh switch trong php cho phép ta đưa ra quyết định có nhiều cách lựa chọn để giá trị của biểu thức truyền vào. Nếu giá trị biểu thức truyền vào trùng với các giá trị biểu thức điều kiện thì các câu lệnh bên trong biểu thức điều kiện sẽ được thực hiện.
Câu l ệnh switch case php N ội dung • Câu l ệnh switch PHP • Switch if • Switch l ồng • L ời k ết Câu l ệnh switch PHP Câu l ệnh switch php cho phép ta đưa quy ết địn h có nhi ều cách l ự a ch ọn để giá tr ị c bi ểu th ức truy ền vào N ếu giá tr ị bi ểu th ứ c truy ền vào trùng v i giá tr ị bi ểu th ứ c ều ki ện câu l ệnh bên bi ểu th ứ c ều ki ện s ẽđược th ực hi ện Cú pháp: switch ($variable) { case $value_1: // chuỗi câu lênh break; case $value_2: // chuỗi câu lệnh break; default: // chuỗi câu lệnh 10 11 break; } Trong lệnh switch, case default t khóa PHP Các chu ỗi câu l ệnh có th ể l ệnh đơn (1 l ệnh) ho ặc l ệnh ghép (k ết h ợp nhi ều l ệnh) không c ần đặt c ặp d ấu ngo ặc nh ọn {} Ở dòng lệnh l ựa ch ọn (case) s ẽ so sánh xem bi ến truy ền vào $variable có với biến điều kiện $value_1, $value_2 hay không, trùng với case câu lệnh bên case thực hiện, đồng thời dòng lệnh break kết thúc câu lệnh switch Nếu lựa chọn (case) mặc định chạy vào chuỗi dòng lệnh default, lệnh default mệnh đề rẻ nhánh switch có không Giá trị case chấp nhận kiễu liệu string, INT, boolean, null, foat biểu thức có kết trả năm loại liệu toán tử quan hệ so sánh switch luôn == Ví dụ: Viết chương nhập vào số, dùng lệnh rẻ nhánh switch kiểm tra số nếu: • Bằng xuất dòng lênh “Số không” • Bằng xuất dòng lệnh “Số một” • Bằng xuất dòng lệnh “Số hai” • Bằng xuất dòng lệnh “Số ba” • Bằng xuất dòng lệnh “Số bốn” • Các số lại xuất dòng lệnh “Không tìm thấy” Bài giải: $number = 1; switch ($number) { case : echo 'Số không'; break; case 1: echo 'Số một'; break; case 2: 10 echo 'Số hai'; 11 break; 12 13 14 15 16 17 case 3: echo 'Số ba'; break; case : echo 'Số bốn'; break; default: 18 19 echo 'Không tìm thấy'; 20 break; } 21 22 Giải thích: • Bước 1: Biểu thức truyền vào biến $number có giá trị = 10 • Bước 2: Ở case thứ điều kiện $number = thực hiện, mà $number = 10 nên không thỏa điều kiện • Bước 3: Tương tự cho lệnh case lại không thỏa điều kiện • Bước 4: Đến lệnh default, lệnh thực lênh case thỏa điều kiện nên hình xuất chữ “Không tìm thấy” Giả sử ta nhập biên $number = 2, toán giải thích sau: • Bước 1: Nhập $number = • Bước 2: Ở case thứ không thỏa điều kiện khác nên chương trình qua Case • Bước 3: Ở case thứ không thỏa điều kiện khác nên chương trình qua Case • Bước 4: Ở case thứ thỏa điều kiện 2, lúc chương trình chạy vào câu lệnh bên nên xuất hình chữ ‘Số hai’, đồng thời dòng Break d ừng chương trình rẻ nhánh thỏa mãn Kết thúc chương trình Switch if Lệnh If lệnh Switch dạng lệnh rẻ nhánh PHP, nhiên lệnh if linh hoạt switch tốc độ nhanh Với toán ta thể switch hoàn toàn có th ể chuy ển thành if, ngược lại toán ta dùng lệnh if để thể chưa chuyển qua lệnh switch đươc Với toán ta thể câu lệnh if sau: $number = 10; if ($number == 0){ echo 'Số không'; } else if ($number == 1){ echo 'Số một'; } else if ($number == 2){ echo 'Số hai'; 10 } 11 else if ($number == 3){ 12 echo 'Số ba'; 13 14 15 16 } else if ($number == 4){ echo 'Số bốn'; } else { 17 18 echo 'Không tìm thấy'; } 19 Switch l ồng Cũng lệnh if, lệnh switch lồng Ví dụ: $number = 12; $midle = null; switch ($number) { case 12 : // $number = 12 $midle = $number % 2; // lấy số dư switch ($midle) { case : // số dư = 10 echo 'Số chẵn'; 11 break; default : 12 echo 'Số lẽ'; 13 break; 14 } 15 break; 16 default: // 12 không làm 17 18 19 break; } ... chạy vào câu lệnh bên nên xuất hình chữ ‘Số hai’, đồng thời dòng Break d ừng chương trình rẻ nhánh thỏa mãn Kết thúc chương trình Switch if Lệnh If lệnh Switch dạng lệnh rẻ nhánh PHP, nhiên lệnh. .. thấy'; } 19 Switch l ồng Cũng lệnh if, lệnh switch lồng Ví dụ: $number = 12; $midle = null; switch ($number) { case 12 : // $number = 12 $midle = $number % 2; // lấy số dư switch ($midle) { case :... linh hoạt switch tốc độ nhanh Với toán ta thể switch hoàn toàn có th ể chuy ển thành if, ngược lại toán ta dùng lệnh if để thể chưa chuyển qua lệnh switch đươc Với toán ta thể câu lệnh if sau: