Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 11 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
11
Dung lượng
123,5 KB
Nội dung
Cấu trúc điều khiển If Else Các câu lệnh điều khiển sẽ thực hiện các hành động khác nhau ứng với các điều kiện khác nhau và rất hay được sử dụng trong lập trình. Cấu trúc điều khiển If Là một trong những tính năng rất quan trọng của một số ngôn ngữ lập trình trong đó có PHP. Sử dụng cấu trúc điều khiển if nếu muốn thực hiện một một khối lệnh khi điều kiện kiểm tra là đúng (TRUE). Cú pháp: 1 2 3 4 5 <?php if(expr){ statement; } ?> Biểu thức điều kiện (expr) sẽ trả về giá trị Boolean. Nếu biểu thức điều kiện đúng thì khối lệnh (statement) sẽ được thực hiện và sai (FALSE) thì chương trình sẽ bỏ qua nó. Ví dụ: 1 2 3 4 5 6 7 <?php if($a> $b){ print "a lớn hơn b"; # nếu $a> $b thì hiển thị "a lớn hơn b" } # ngược lại thì bỏ qua ?> Cấu trúc điều khiển If Else Sử dụng cấu trúc điều kiển if else để thực hiện một khối lệnh này nếu điều kiện kiểm tra là đúng và thực hiện khối lệnh khác nếu điều kiện kiểm tra là sai. Ví dụ: 1 2 3 4 5 6 7 <?php if($a> $b){ print "a lớn hơn b"; # nếu đúng }else{ print "a không lớn hơn b"; # nếu sai } ?> 1 Cấu trúc điều khiển If ElseIf Else elseif là sự kết hợp giữa if và else nói cách khác là sự mở rộng của if trong else để thực hiện một khối lệnh khác trong trường hợp điều kiện kiểm tra là sai. Sử dụng cấu trúc điều khiển if elseif else nếu muốn lựa chọn thực hiện một khối lệnh trong một vài khối lệnh để thực hiện. Ví dụ: 1 2 3 4 5 6 7 8 9 <?php if($a> $b){ print "a lớn hơn b"; }elseif($a== $b){ print "a bằng b"; }else{ print "a bé hơn b"; } ?> Các elseif có thể được viết lồng nhau. Có thể viết thành 2 từ else if hay thành 1 từ elseif đều được. Nhưng nếu sử dụng dấu hai chấm (:) để định nghĩa elseif thì không được viết thành 2 từ else if mà phải viết thành 1 từ elseif nếu không sẽ gặp lỗi phân tích cú pháp. Ví dụ: 1 2 3 4 5 6 7 8 9 1 0 11 12 13 14 15 16 <?php /* Sai */ if($a> $b): print $a." lớn hơn ".$b; else if($a== $b): // sẽ không được biên dịch print "Lỗi phân tích cú pháp"; endif; /* Đúng */ if($a> $b): print $a." lớn hơn ".$b; elseif($a== $b): // lưu ý sự kết hợp của các từ print $a." bằng ".$b; else: print $a." lớn hơn hoặc bằng ".$b; endif; ?> Phong cách lập trình 2 Khi sử dụng nhiều cấu trúc điều khiển if else lồng nhau thì mặc định else sẽ đi với if gần nó nhất (phía trên). Ví dụ: 1 2 3 4 5 6 7 8 <?php if($a> $b) # if 1 if($a> 18) # if 2 print $a; else # else 1 print $b; print $c; # luôn được thực hiện ?> Hỏi: else 1 sẽ đi với if nào (if 1 hay if 2)? Đáp: nếu lập trình tốt thì sẽ không bao giờ phải trả lời những câu hỏi ngớ ngẩn như thế! 1 2 3 4 5 6 7 8 9 1 0 11 12 13 14 15 16 <?php if($a> $b){ # if 1 if($a> 18){ # if 2 print $a; }else{ # else 1 print $b; print $c; } ?> } /* Luôn luôn bọc khối lệnh bằng { và } cho dù khối lệnh chỉ có 1 câu lệnh. Nếu không thì chỉ có 1 câu lệnh ngay liền phía sau if hoặc else là có hiệu lực (print $c;) */ Hạn chế sử dụng if else lồng nhau quá nhiều (khó quản lý). Toán tử trong PHP(PHP Operators) Toán tử số học: 3 Là phép toán cộng trừ nhân chia trong số hoc, ngoài ra còn có thêm phép chia lấy dư(%), phép tăng thêm 1, giảm đi 1. Toán tử Miêu tả Ví dụ Kết quả + Cộng x=2 x+2 4 - Trừ x=2 5-x 3 * Nhân x=4 x*5 20 / Chia 15/5 5/2 3 2.5 % Chia lấy dư 5%2 10%8 10%2 1 2 0 ++ Tăng thêm 1 x=5 x++ x=6 – Giảm đi 1 x=5 x– x=4 Toán tử gán Là phép gán trong php, sử dụng ký tự “=” kết hợp với các phép toán khác để tính toán và gán giá trị của toán hạng bên phải cho toán hạng bên trái. Toán tử Ví dụ Giải thích = x=y x=y += x+=y x=x+y -= x-=y x=x-y *= x*=y x=x*y /= x/=y x=x/y .= x.=y x=x.y %= x%=y x=x%y Toán tử so sánh Là phép so sánh giữa 2 toán hạng với nhau, có thể là bằng, khác, lớn hơn, nhỏ hơn… Toán tử Miêu tả Ví dụ 4 == so sánh bằng 5==8 trả về false != khác 5!=8 trả về true <> khác 5<>8 trả về true > lớn hơn 5>8 trả về false < nhỏ hơn 5<8 trả về true >= lớn hơn hoặc bằng 5>=8 trả về false <= nhỏ hợn hoặc bằng 5<=8 trả về true Toán tử Logic Là phép kiểm tra logic (true/false) của 1 điều kiện cho trước. Toán tử Miêu tả Ví dụ &&, AND và x=6 y=3(x < 10 && y > 1) trả về true ||, OR hơặc x=6 y=3(x==5 || y==5) trả về false ! phủ định x=6 y=3!(x==y) trả về true Ví dụ: 1 2 3 4 5 6 7 8 9 1 0 11 12 13 14 15 <?php /* Toan tu logic trong php */ $x=6; $y=3; if ($x>7 AND $y>4) { echo 'thoa man dieu kien dua ra'; }else { echo 'khong thoa man dieu kien dua ra'; } //ket qua ra man hinh: khong thoa man dieu kien dua ra ?> 5 Biến trong PHP (Variables in PHP) Quy định đặt tên biến trong PHP: - Mọi biến trong PHP bắt đầu bằng ký tự “$” (newbie mới học PHP thường quên $ trươc tên biến khi code :d ) - Biến trong PHP chỉ bao gồm chữ số, chữ cái và dấu gạch dưới(a-z, A-Z, 0-9, and _ ), tên biến không được bắt đâù bằng số(0-9) và không được có ký tự cách(space) trong tên biến. - Biến trong PHP phân biệt chữ hoa và chữ thường. - Nếu tên biến có hơn 1 từ bạn nên dùng ký tự gach dưới để kết hợp chúng với nhau. Ví dụ: 1 $my_string, $myString Các lưu ý về biến trong PHP - Các biến trong PHP không cần được khai báo trước khi bạn gán trị cho nó :d (Java thì bắt buộc phải khai báo trước khi bạn gán giá trị). - PHP sẽ tự động chuyển sang kiểu tương ứng, phụ thuộc vào giá trị ban khai báo. Các ví dụ: 1 2 3 4 5 6 7 8 9 1 0 11 12 13 14 15 16 17 <?php /* su dung bien trong php */ //phan biet chua hoa - chu thuong $a = 'Gia tri a '; $A = 'Gia tri A'; echo "$a, $A"; //ket quan ra man hinh: "Gia tri a, Gia tri A"; //khai bao 1 bien kieu so $bien_kieu_so = 2010; //khai bao 1 bien kieu chuoi $bien_kieu_chuoi = 'Nam nay la nam '; //hien thi ra man hinh echo "$bien_kieu_chu $bien_kieu_so"; //ket qua ra man hinh: "Nam nay la nam 2010"; ?> 6 1 8 Phong cách lập trình: 1. Luôn khởi tạo 1 giá trị mặc đinh cho biến khi sử dụng nó Ví dụ: 1 2 3 4 5 6 7 8 9 1 0 11 <?php /* <pre>truong hop nay bien $sql chua duoc su dung nhung coder van echo ra</pre> */ $ok = false; if ($ok) { $sql = "SELECT * FROM TABLE"; } echo $sql; ?> nên sửa thành: 1 2 3 4 5 6 7 8 9 1 0 11 12 <?php /* <pre>truong hop nay bien $sql da duoc khai bao day du</pre> */ $ok = false; $sql = ''; if ($ok) { $sql = "SELECT * FROM TABLE"; } echo $sql; ?> 2. Lưu ý khi gán biến -Nếu biến là 1 chuỗi thì bạn nên dùng dấu nháy đơn thay vì dấu nháy kép (PHP sẽ không mất thêm time để kiểm tra), cái này nhiều bạn không để ý đến :d Ví dụ nếu gán biến là chuỗi: Nên dùng: $str = ‘Đay la 1 chuỗi’; Không nên dùng: $str = “Đây là 1 chuỗi”; 7 Sử dụng $_GET Giới thiệu về $_GET Là một mảng kết hợp của các biến nhận được từ script hiện tại thông qua các tham số trong đường dẫn URL. Được xây dựng để nhận dữ liệu từ form sử dụng phương thức GET. Người dùng có thể nhìn thấy được thông tin được gửi từ form sử dụng phương thức GET trên thanh địa chỉ của trình duyệt và số lượng thông tin được gửi là có giới hạn. Từ PHP 4.1.0 $_GET được giới thiệu để thay thế cho $HTTP_GET_VARS (Biến $HTTP_GET_VARS chứa cùng một thông tin khởi tạo, nhưng nó không phải là một biến superglobal). Lưu ý: PHP xem $HTTP_GET_VARS và $_GET là 2 biến khác nhau. Ví dụ: 1 2 3 4 5 6 7 8 9 1 0 11 12 13 <! bắt đầu sử dụng phương thức truyền dữ liệu HTTP GET method="GET" dữ liệu sẽ được chuyển sang xin-chao.php để xử lý action="xin-chao.php" > <form action="xin-chao.php" method="GET"> Hãy cho tôi biết tên bạn là gì nào? <input type="text" name="ten" /> <! tên > <input type="submit" /> <! submit > </form> <! kết thúc > Khi người dùng nhập tên vào (Vietnam chẳng hạn) và kích vào nút “Submit Query” thì đường dẫn URL sẽ trông như thế này: 1 http://php.com.vn/xin-chao.php?ten=Vietnam Trong xin-chao.php sử dụng $_GET để nhận dữ liệu từ form đã submit (tên của các trường trong form sẽ tự động được chuyển thành khóa của mảng $_GET) 1 Xin chào <?php print $_GET["ten"]; ?>! ? Khi nào thì sử dụng phương thức GET? - Khi sử dụng phương thức GET thì tất cả các thông tin về tên biến và giá trị của chúng đều được hiển thị trong đường dẫn URL. Do đó không nên sử dụng phương thức này để gửi mật khẩu hoặc các 8 thông tin nhạy cảm. Tuy nhiên khi các biến được hiển thị trên đường dẫn URL có thể thực hiện BookMark được. Nên có thể hữu dụng trong một số trường hợp. Lưu ý: phương thức GET không thích hợp với các biến có giá trị rất lớn. Không nên sử dụng phương thức GET với các biến có giá trị lớn hơn 2000 ký tự. Vòng lặp while và do while (while loops – do while loops) Vòng lặp while Là cấu trúc điều khiển đơn giản nhất trong PHP. Thực thi việc lặp lại một khối lệnh khi điều kiện kiểm tra là đúng (TRUE). Cú pháp: 1 2 3 4 5 <?php while(expr){ statement; } ?> hoặc 1 2 3 4 5 <?php while(expr): statement; endwhile; ?> Ý nghĩa của vòng lặp while rất đơn giản. PHP sẽ thực thi khối lệnh (statement) nếu điều kiện kiểm tra (expr) là đúng. Điều kiện sẽ được kiểm tra trước khi vào thân vòng lặp do đó nếu có thay đổi giá trị kiểm tra ở trong thân vòng lặp thì khối lệnh vẫn được thực thi cho đến khi kết thúc khối lệnh. Nếu điều kiện kiểm tra là sai (FALSE) ngay từ đầu thì khối lệnh sẽ không được thực hiện dù chỉ là một lần. Ví dụ: 1 2 3 4 5 <?php # ví dụ 1 # khởi tạo và gán giá trị cho biến $i là 1 $i= 1; while($i<= 5): # nếu giá trị của biến $i bé hơn hoặc bằng 5 print $i; # hiển thị giá trị của biến $i 9 6 7 8 9 1 0 11 12 13 14 15 16 17 $i++; # sau đó tăng giá trị của $i lên 1 endwhile; # kết thúc vòng lặp # ví dụ 2 $i= 1; while($i<= 5){ print $i++; } ?> Vòng lặp do while Rất giống với vòng lặp while. Thực hiện khối lệnh ít nhất một lần. Sau đó sẽ kiểm tra điều kiện nếu điều kiện là đúng thì tiếp tục thực thi khối lệnh cần lặp. Nếu điều kiện là sai thì kết thúc vòng lặp. 1 2 3 4 5 6 <?php $i= 0; do{ print $i; # hiển thị giá trị của biến $i }while($i> 0); # sau đó mới kiểm tra điều kiện ?> Sử dụng break, continue, goto (PHP 5.3.0) nếu muốn thoát khỏi while hay do while Phong cách lập trình Sử dụng 1 2 3 4 5 6 do{ thay vì do { # tiết kiệm được 1 khoảng trắng hoặc do { # tiết kiệm được 1 dòng Sử dụng 1 2 }while( thay vì } while ( # tiết kiệm được 2 khoảng trắng 10 [...]...3 4hoặc } 5while ( 6 # tiết kiệm được 1 dòng và 1 khoảng trắng Kiểm tra thật kỹ điều kiện để tránh rơi vào trạng thái lặp vô thời hạn Cố gắng tránh sử dụng while và do while lồng nhau 11 . Cấu trúc điều khiển If Else Các câu lệnh điều khiển sẽ thực hiện các hành động khác nhau ứng với các điều kiện khác nhau và rất hay được sử dụng trong lập trình. Cấu trúc điều khiển If Là. dụ: 1 2 3 4 5 6 7 <?php if( $a> $b){ print "a lớn hơn b"; # nếu đúng }else{ print "a không lớn hơn b"; # nếu sai } ?> 1 Cấu trúc điều khiển If ElseIf Else elseif là sự kết hợp giữa if và else. thì bỏ qua ?> Cấu trúc điều khiển If Else Sử dụng cấu trúc điều kiển if else để thực hiện một khối lệnh này nếu điều kiện kiểm tra là đúng và thực hiện khối lệnh khác nếu điều kiện kiểm tra