Xem mẫu
- Cấu trúc điều khiển
Bạn đã bao giờ dừng lại chỉ đường cho một lái xe lạc đường hay chưa ? Lấy
một ví dụ bạn thử đặt mình vào tình huống như thế này:
Chào ông bạn ông có thể chỉ cho tôi đương tới ngã tư Vọng được không? -
Tất nhiên rùi ông đi theo lối này ,rẽ trái ,đi tiếp,rẽ phải và ông sẽ tìm thấy lối
ra ngã tư Vọng á "
Cách chỉ đường trên thật là rắc rối như một đường kẻ chằng chịt: Đi theo
đường này,rẽ ở đây hic hic thế thì có mà ra Đại La mất .hichic đây là một
cách chỉ dẫn khá củ chuối và ...
Họ không chỉ cho người ấy biết là phải đi đường bao xa rồi phải đi đến đâu
để có thể nhìn thấy biển hướng dẫn chỉ là Phố Vọng ở đâu ...
Và nếu bạn là người tận tình thì hic hic bạn nên dẫn người ấy đi cho đến nơi
đến chốn nhất là chỉ đường cho một cô gái xinh đẹp á .
Và trong ngôn ngữ PHP cũng vậy nếu không điều khiển cấu trúc thì nó
cũng giông như hướng dẫn chỉ đường thứ nhất á rất chi là lộn xộn.
Việc điều khiển cấu trúc là những cốt lõi trong chương trình này.Chúng cho
phép một ngôn ngữ lập trình có thể trả lời trực tiếp phụ thuộc vào những gì
đang xảy ra, đồng thời nó cho phép thực hiên nhiệm vụ một cách hoàn hảo
Trong ngôn ngữ PHP có hai loại hình cơ bản để điều khiển cấu trúc :
• Ngôn ngữ điều kiện
• Điều khiển theo một vòng khép kín
Trong bài này bạn sẽ thấy một bài ví dụ về điều khiển cấu trúc .Bây giờ
chúng ta sẽ học kĩ hơn.
+ Ngôn ngữ điều kiện:
Ngôn ngữ điều kiện có thể giúp bạn chia nhỏ các phần khác nhau trong một
ngôn ngữ ;ập trình phụ thuộc vào đó là một hay nhiểu điều kiện ,xác định
đúng hay sai .Nói một cách đơn giản nó cho phép bạn thử nghiệm và điều
- hành những thao tác khác nhau dựa vào kết quả
-Câu lệnh Nếu ( If statement)
Xem ví dụ sau :
Ví dụ này biểu thị một cách đơn giản nhất của một câu lệnh.Các câu lệnh
luôn bắt đầu bằng chữ "If" theo sau là các điều kiện được đặt trong ngoặc
đơn.Nếu câu lệnh điều kiện được công nhân là đúng thì sau đó các câu lệnh
kèm theo điều kiện sẽ được chấp nhận .Trong trường hợp này nếu điều kiện
là sai thì không thể thực hiện được gì và bạn sẽ thấy một cửa sổ Browser
trống rỗng khi chạy chương trình ngôn ngữ lập trình.
Nếu có hơn một câu lệnh được thực hiện trong cách điều khiển cấu trúc thì
phải cho chúng vào trong ngoặc {
Nên nhớ rằng vị trí của các yếu tố không ảnh hưởng tới việc thực hiện của
ngôn ngữ lập trình. Các ví dụ được sắp xếp dưới đây rất hoàn thiện không
chỉ trong các câu lệnh mà cong ở tất cả hình thức điều khiển theo một chu kì
kín
if ($x == 1) print '$x is equal to 1';
- if ($x == 1)
print '$x is equal to 1';
if ($x == 1) { print '$x is equal to 1'; }
if ($x == 1) {
print '$x is equal to 1';
}
Với sự rõ ràng này các nhà lập trình lựa chọn việc sử dụng cách viết lùi vào
và ngoặc " { } " thậm chí cả một dòng mã .Tuy nhiên người ta vẫn thường
ưa dùng mã số riêng.
Bạn cũng có thể để tất cả điều kiện trong ngoặc đơn ,để thực hiện tất cả các
điều kiện thì đòi hỏi tất cả các điều kiện phải đúng.
Các câu lệnh khác ( Else Statement)
Như tên của nó bạn có thể thực hiện thêm một số chức năng khác nếu điều
kiện bên trong 1
(If Statement) được xác định là sai:
- ?>
+ Câu lệnh Else if Statement
Đến nay chúng ta vẫn có thể thực hiện một lệnh mà điều kiện không
đúng.Nhưng còn nhiều điều kiện thì sao? Bạn có thể sử dụng một loạt câu
lệnh If Statement để thử nghiệm tính khả thi của mỗi điều kiện, nhưng trong
một số trường hợp thì lựa chọn đó không thích hợp vậy bạn phải dùng tới
Else if Statement
Sự kết hợp giữa If ,Else Statement và Else if Statement được thực hiện liên
tiếp nếu điều kiện trong If Statemnet là sai .Khi điều kiện trong một Else if
Statement được xác định là đúng thì các lện sẽ được thực hiện.Ngôn ngữ lập
trình sẽ ngừng thực hiện toàn bộ If | Else if| Else Statement .Phần còn lại của
ngôn ngữ lập trình sẽ tiếp tục thực hiện .
Xem ví dụ sau :
Phần cuối còn lại của câu lệnh sẽ bị loại bỏ nếu bạn không muốn thực hiện
vì If hoặc Else If là đúng
- $x=0;
if ($x == 2) {
print '$x is equal to 2';
} else if ($x == 1) {
print '$x is equal to 1';
}
?>
Trong trường hợp này ko có điều kiện của If hoặc Else if statement là đúng
và Else statement không được cung cấp dẫn tới không có kết quả của
Browser .
+Sự thay đổi :
Trong những tình huống này sự thay đổi là lựa chọn tốt nhất đối với If | Else
if| Else Statement để kiểm tra có nhiều giá trị chống lại 1 đièu kiên thay đổi
hay không.Đây là dạng câu lệnh cơ bản
Sau khi chạy từng phần mã hầu hết sẽ nên có nghĩa đối với bạn .Ở dòng đầu
tiên của câu lện chúng ta thấy có sự thay đổi đòng nhất hơn được thực hiện
trong ngoặc đơn. Mỗi trường hợp có thể có những giá trị thay đổi được.
- Những thay đổi được thực hiện từng phần nhỏ trên If/Else if/Else
statements.Mỗi trường hợp giá trị phải khớp với giá trị thay đổi,mỗi câu lệnh
được thực hiện gồm các trường hợp khác
Để tránh trường hợp này xảy ra người ta sử dụng 1 câu lệnh khác " Break;"
.Kết thúc việc thực hiện thay đổi câu lệnh và để cho ngôn ngữ lập trình tiwps
tục thực hiện, nó cũng thực hiện một vòng khép kín .
Bạn cũng có thể tùy ý sử dụng trường hợp đặc biệt gọi là " default" ( thao tác
cài đặt trước) .Trường hợp này thao tác giống như Else Statement ,và thực
hiện nếu các trường hợp khách là sai . TRường hợp này có thể là trường hợp
cuối cùng bạn biết:
Giông như Break Statement là Exit Statement. Lối ra thường được sử dụng
trong các tình huống mà bạn chạy chương trình gặp lỗi nặng( fatal error) (Ví
dụ như user đăng nhập sai pass) hoặc bất kì lúc nào bạn cần kết thúc thực
hiện ngôn ngữ lập trình trược khi nó tự động chấm dứt :
-
Không giống như break, exit có thể được sử dụng ở bất cứ đâu trong ngôn
ngữ lập trình của bạn,trong và ngoài điều khiển cấu trúc.
+ Ba bước của một cơ chế vận hành
Mặc dù theo thuật ngữ kĩ thuật một cơ chế vận hành không phải là một cấu
trúc điều khiển gồm ba phần ,biểu hiện bằng dấu " ? " có thể sử dụng với
If/Else Statements .Nó cũng có thể được sử dụng trong những trường hợp
mà bạn muốn thực hiện đọc lậpphụ thuộc vào điều kiện nào đúng hay sai
Điều kiện phải được đăt trong ngoặc đơn đầu tiên .Nếu thực hiện được thì
phần lệnh trong ngoặc đơn thứ hai cũng sẽ thự hiện.Nếu không phàn lệnh
trong ngoặc đơn thứ 3 sẽ thự hiện
- (condition) ? (executes if the condition is true) : (executes
if the condition is false);
Bãn sẽ thấy sự hữu ích của nó như thế nào trong phần tiếp theo.
Control Loops ( Điều khiển theo chu kì)
Trong PHP thường có những trường hợp cá biệt mà bạn cần thực hiện lại
nhiệm vụ ,như nhận sữ liệu từ các cơ sở dữ liệu ,gửi e-mail vào danh sách
mail hoặc xem lại nội dung của bài viết .Điều khiển theo chu kì sẽ cho phép
bạn thực hiện những nhiệm vụ này một cách hiệu quả .
While Loops (Chu kì thời gian)
Đây là những hình thức dơn giản nhất của chu kì
Khi bạn chạy chương trình này bạn sẽ thấy các số từ 1 đến 10 hiện trên màn
hình của bạn.Hãy xem mã . Trong nhiều trường hợp nó rất giống với If
statement .Trước hết đó là thời gian đồng nhất kèm theo điều kiện trong
ngoặ đơn.
Các lệnh trong một chu kì sẽ được thực hiện miễn là điều kiện trong ngoặc
đơn được xác định là đúng .Khi điều kiện có giá trị được kiểm tra trước khi
chu kì đó được thực hiện ,nếu điều kiện sai thì các lệnh trong chu kì đó
không thể thực hiện được.
Do...While Loops ( Thực hiện chu kì thời gian)
- Do...While Loops có quan hệ với While Loops:
Điểm khác nhau cơ bản là cách thực hiện ,giá tẹi của điều kiện trong
Do...While Loop được thử nghiệm sau khi lịch trình hoạt động.Điều này có
nghĩa trong các ví dụ trên $x đã cho ra kết quả một lần ,sau đó khi việc thực
hiện chu kì kết thúc thì $x lớn hơn 10
For Loops ( Đối với cho kì )
Trên đây là một ví dụ của một chu kì .For Loops rất giống với While Loops
nhưng sử dụng thuận tiện hơn trong nhiều trường hợp .Chúng cũng là những
chu kì phức tạp nhất trong PHP .,vay mựơn phần cú pháp và chức năng từ
chương trình C . Đây là cấu chúc điều khiển cuối cùng mà bài này giới thiệu
tới các bạn
Nếu như bạn đoán được đoạn trích ở trên cho ra một một kết quả như ví dụ 1
của while loop ,có thể bạn đã đúng .Hãy xem xét tại sao nó lai vận hành như
thế .Trong dấu ngoặc đơn For Loops thực hiện 3 điều kiện ngăn cách bởi
dấu " ; " .Điều kiện thứ nhất chỉ được thực hiện 1 lần khi chu kì bắt đầu
.Trong trường hợp này $x có giá trị bằng 0
Điều kiện tiếp theo là điều kiện được kiểm tra mỗi lần khi chu kì hoạt động
.Mỗi lần điêềukiện sai chu kì sẽ ngừng thực hiện.
- Cũng giống như While Loops ,nếu trong lần vận hành đầu tiên mà điều kiện
sai thì không có lệnh nào trong chu kì được thực hiện.
Điều kiện cuối cùng sẽ được thực hiện khi chu kì hoạt động sau khicác lệnh
được thực hiện .Nên nhớ là không có dấu " ; " sau điều kiẹn cuối cùng ( Bạn
thấy nó có giống Pascal không nào )
Như bạn đã biết ,For Loops thực hiện nhưng chức năng tương tự như While
Loops nhưng hiệu quả hơn .Nói cách khác đó là cách tốt nhất để sử dụng For
Loops ,những trương hợp mà bạn biết yếu tố nào là quan trọng để ban thực
hiện.
The Foreach Loop
Chu kì mới này được giới thiệu trong phiên bản 4 của PHP .Nó được sử
dụng nội bộ thông qua các yếu tố ngôn ngữmcho phép ban có thể dễ dàng
thực hiện việc chia ra kết quả dựa vào các yếu tố đó. Để tránh sự phức tạp
chúng tôi sẽ khái quát riêng chu kì này khi ngôn ngữ này được giới thiệu và
phổ biến.
Cuối cùng :
Trong bài viết này chúng tôi đã giới thiệu đến 2 cấu trúc điều khiên mà ngôn
ngữ PHP hỗ trợ.Những cấu trúc này là nhân tố quan trọng trong điều khiển
tốc độ chương trình,các định nghĩa được giới thiệu sẽ được sử dụng rộng rãi
từ bây giờ
Trong bài tiếp theo chúgn tôi sẽ đề cập đến các chức năng đã được định
nghĩa trước, các chức năng này đóng một vai trò vô cùng quan trọng trong
việc phát triển của ngôn ngữ lập trình.
- Những điều cần nhớ :
• Các cấu trúc điều khiển chi phối tốc dọ của chương
trình,cho phép bạn có thể chia nhỏ các phần khác
nhau của một ngôn ngữ lập trình ,phụ thuộc vào đầu
vào và có thể dễ dàng thực hiện các thao tác.
• Có hai loại cấu trúc điều khiển trong PHP : Ngôn
ngữ điều kiện và Điều khiển theo một vòng khép kín
• Hai loại cấu trúc trên chỉ có các lệnh không dùng
ngoặc ,tuy nhiên các nhà lập trình viên thường sử
dụng chúng để tạo mã dễ hiểu hơn.Các lệnh này
thường được ứng dụng với cùng lý do
• Break; có thể được dùng để kết thúc lệnh hiện thời
.Nó cũng có thể được sử dụng để xoá bỏ For Loops
và While Loops ,Exit ,xoá bỏ toàn bộ nhiệm vụ của
ngôn ngữ laậptrình .Break còn được dùng ở bất kì
đâu trong ngôn ngữ lập trình
nguon tai.lieu . vn