1. Trang chủ
  2. » Thể loại khác

Cấu trúc điều khiển If Else pot

11 435 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

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 ElseCá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.. Sử dụng cấu trúc điều kh

Trang 1

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

}

?>

Trang 2

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

10

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

Trang 3

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

10

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:

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

Trang 4

Toán tử Miêu tả Ví dụ Kết quả

x+2

4

5-x

3

x*5

20

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ử 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…

== so sánh bằng 5==8 trả về false

!= khác 5!=8 trả về true

Trang 5

<> 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

&&,

AND

y=3(x < 10 && y > 1) trả

về true

y=3(x==5 || y==5) trả về false

y=3!(x==y) trả về true

Ví dụ:

1

2

3

4

5

6

7

8

9

10

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

?>

Trang 6

-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

10

11

12

13

14

15

16

17

18

<?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";

?>

Phong cách lập trình:

Trang 7

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

10

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

10

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”;

-Sử dụng $_GET

Giới thiệu về $_GET

Trang 8

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

10

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:

1http://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)

1Xin 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 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ự

Trang 9

-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

6

7

8

9

10

11

12

<?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

$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++;

}

Trang 10

14

15

16

17

?>

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

3

4

5

6

}while(

thay vì

} while ( # tiết kiệm được 2 khoảng trắng

hoặc

}

while ( # 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

Ngày đăng: 08/08/2014, 15:20

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w