Hướng dẫn dùng elseif trong PHP
Các vấn đề ta đề cập từ đầu bài cho đến nay chỉ cho phép chúng ta viết chương trình chạy theo một trình tự từ trên xuống và không bỏ qua một đoạn code nào ( trừ phần ghi chú ). Tuy nhiên trong thực tế không phải lúc nào ta cũng muốn chương trình chạy hết các dòng lệnh đó. Vì thế câu lệnh if else trong php ra đời giúp ta giải quyết vấn đề này. Show Nội dung chính
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức. 1. Câu lệnh điều kiện là gì ?Câu lệnh điều kiện if else cho phép ta thay đổi luồng của chương trình dựa trên một điều kiện nào đó. Nếu điều kiện là đúng (true) thì chương trình sẽ được thực hiện, ngược lại nếu điều kiện đưa ra là sai (false) thì nội dung công việc đó sẽ không được thực hiện. Ví dụ: để kiểm tra một số là số chẵn hay số lẻ ta thực hiện các bước sau: Bước 1 : Lấy số cần kiểm tra Bước 2: Chia số đó cho 2 để xác định số dư Bước 3: Kiểm tra số dư đó có bằng 0 hay không, nếu bằng 0 thì đó là số chẵn, ngược lại đó là số lẻ. Để giải bài toán này qua ngôn ngữ PHP thì trước tiên ta tìm hiểu cú pháp câu điều kiện if else trong php đã nhé. 2. Câu lệnh điều kiện ifCâu lệnh if cho phép ta đưa ra các quyết định dựa trên việc kiểm tra điều kiện nào đó đúng (true) hay sai (false). Cú pháp như sau: Bài viết này được đăng tại [free tuts .net] if ($bieuthuc) { // Các Câu Lệnh } Ví dụ: Chương trình kiểm tra một số chẵn hay lẻ $so_can_kiem_tra = 12; $so_du = $so_can_kiem_tra % 2; if ($so_du == 0){ echo 'Số '.$so_can_kiem_tra.' Là Số Chẵn'; } Dòng thứ 1: Gán cho biến Dòng thứ 2: Chia biến Dòng thứ 3: Kiểm tra số dư có bằng 0 hay không? Nếu bằng không thì nó sẽ chạy dòng lệnh bên trong thẻ mở Chạy chương trình này kết quả sẽ xuất ra là "Số 12 Là Số Chẵn". Bây giờ giả sử ta đổi giá trị 12 thành 13 thì kết quả sẽ không xuất ra màn hình vì số 13 chia cho 2 sẽ dư = 1, mà điều kiện để xuất ra câu thông báo là số dư phải bằng 0 => không đúng điều kiện nên trình biên dịch sẽ không chạy vào đoạn code bên trong lệnh if.
Ví dụ: Chương trình kiểm tra có phải năm nhuận hay không? (Năm nhuận là năm chia hết cho 4 hoặc 400 nhưng không chia hết cho 100) Bước 1: Nhập vào năm cần kiểm tra. Bài giải: $nam = 1990; $kiem_tra = ($nam % 4 == 0 && $nam % 100 != 0 || $nam % 400 == 0); if ($kiem_tra == true){ echo 'Năm ' . $nam . ' Là Năm Nhuận'; } Trong đoạn code trên thì biểu thức điều kiện là khó nhất nên mình sẽ giải thích nó. Để tính được biểu thức này trước tiên ta phải biết độ ưu tiên trong toán tử luận
lý theo quy luật là : Lúc này biểu thức Vậy kết quả của biểu thức là false. Vì trong câu if điều kiện nhập vào là phải true mới thực hiện xuất ra màn hình, nhưng biến kiểm tra lại mang giá trị false nên những dòng lệnh bên trong cặp ngoặc nhọn không được thực hiện => nên chương trình không in ra câu thông báo. 3. Câu lệnh If else trong phpLệnh if dùng để kiểm tra một điều kiện có đúng hay không? Giả sử trường hợp ngược lại điều kiện không đúng thì sẽ thực hiện điều gì ? để giải đáp câu hỏi này ta sẽ nghiên cứu đến lệnh if else trong php if ($bieuthuc){ // Những Câu Lệnh 1; } else{ // Những câu lệnh 2; } Giải thích ý nghĩa:
Ví dụ: kiểm tra năm nay là năm chẵn hay năm lẽ, xuất ra màn hình kết quả chẵn hay lẽ. Bước 1: Nhập năm $nam = 2014; $so_du = $nam % 2; if ($so_du == 0){ echo 'Năm ' . $nam . ' Là Năm Chẵn'; } else{ echo 'Năm ' . $nam . ' Là Năm Lẻ'; } Giải thích Bước 1: Nhập vào biến Giả sử ta nhập Bước 1: Nhập vào biến $nam giá trị 2013 4. Kết hợp nhiều câu lệnh if else trong phpTrong thực tế không phải lúc nào cũng chỉ có 2 điều kiện mà sẽ có hàng chục điều kiện khác nhau, lúc này ta phải kết hợp nhuần nhuyễn giữa 2 lệnh if và else để xử lý. Ví dụ: Nhập vào một màu và kiểm tra:
Hướng dẫn: Bước 1: Nhập màu
Bài giải: $mau = 'màu xanh'; if ($mau == 'màu xanh'){ echo 'Đây là màu xanh'; } else if ($mau == 'màu đỏ') { echo "Đây là màu đỏ"; } else if ($mau == 'màu vàng'){ echo 'Đây là màu vàng'; } else{ echo 'Các màu khác'; } Giải thích: Bước 1: Nhập màu xanh vào biến Bước 2: Đến dòng lệnh kiểm tra phải màu xanh không, vì nó bằng ‘màu xanh’ nên bên trong khối lệnh if của màu xanh sẽ được chạy và xuất ra màn hình dòng chữ “Đây là màu xanh”, đồng thời nó không chạy các dòng lệnh bên dưới nữa. Giả sử ta nhập biến Bước 1: Nhập màu vàng vào biến $mau Giả sử ta nhập biến
5. Câu lệnh if else lồng nhauĐây là phần khó nhất trong tất cả các vấn đề của câu lệnh if else trong php, ở bên trên ta chỉ chạy câu lệnh if else một tầng, ở phần này ta sẽ nghiên cứu đến if else nhiều tầng lồng nhau, có nghĩa là câu if con nằm trong câu if cha. if ($bieu_thuc_cha) { // Các câu lệnh thuộc về biểu thức cha; if ($bieu_thuc_con){ // Các câu lệnh thuộc về biểu thức con; } } Ví dụ: Kiểm tra sô nhập vào có phải là số chẵn hay không? Nếu là số chẵn thì kiểm tra tiếp số đó có lớn hơn100 hay không, nếu lớn hơn 100 thì xuất ra màn hình “Số chẵn và lớn hơn 100″, ngược lại xuất ra màn hình “Số chẵn và nhỏ hơn 100″. Bước 1: Nhập vào một số Bài giải: $so = 80; // Nhập vào số 80 if ($so % 2 == 0) // Nếu số dư khi chia cho 2 = o, tức là số chẵn ta sẽ chạy tiếp câu lệnh bên trong { if ($so > 100){ // Nếu số lớn hơn 100 thì chạy lệnh bên trong echo 'Số chẵn và lớn hơn 100'; } else if ($so < 100){ // Ngược lại nếu số nhỏ hơn 100 thì chạy lệnh bên trong echo 'Số chẵn và nhỏ hơn 100'; } } Qua phần ghi chú tôi đã giải thích cho các bạn nó xử lý như thế nào rồi nên có lẽ tôi không giải thích gì thêm cho phần này vì nó cũng tương tự như những phần trên, chỉ khác nhiều câu lệnh if lồng nhau. Nếu các bạn vẫn chưa hiểu thì qua phần bài tập có lời giải ở cuối bài các bạn đọc kỹ và gõ theo rồi xem kết quả là sẽ hình dung được. 6. Lời kếtThật sự thì bài này cũng chưa phải là chi tiết về câu lệnh if else trong php nhưng cũng đủ để các bạn tự học để thực hành. Nếu các bạn muốn đọc thêm tài liệu có thể đọc thêm bài này ở W3C, bài tiếp theo chúng ta sẽ tìm hiểu câu lệnh switch trong php. |