BAZA WIEDZY
KURSY
Bazy danych w PHP
Kurs AdvancedAJAX
Kurs ASP
Kurs ASP.NET
Kurs C++
Kurs CSS
Kurs HTML
Kurs HTML drugi
Kurs JavaScript
Kurs MySQL
Kurs PHP
Kurs RSS
Kurs XHTML
Obiekty DOM
MANUALE
CSS1 - W3C
DOM - w budowie
PHP 2005
PHP 2006
Wyrażenia regularne
SHOUTBOX
STAT
Online: 162 | UU: 3298
Warunki i pętle
5 grudzień 2007

1. Warunek If.

Zdecydowanie najpopularniejszy warunek. Może on przyjąć formę:

If warunek Then instrukcje [Else instrukcje ]

lub bardziej czytelną:

If warunek Then
[instukcje]
[ElseIf warunek n-ty Then
[instrukcje] ]
[Else
[instrukcje] ]
End If

Powyższa instrukcja pozwala na sprawdzenie wielu warunków. Oto przykład, który powinien ułatwić zrozumienie instrukcji If:

If Hour(Now) >= 12 Then Response.Write "Good afternoon!"

Funkcja Hour zwraca bieżącą godzinę, którą określa parametr Now. W przypadku, gdy wynik porównania (wartość jest większa lub równa 12) jest prawdziwy, tzn. zwraca wartość true, wtedy zostanie wyświetlony komunikat "Good afternoon!". Inny przykład:

If Hour(Now) < 12 Then
Response.Write "Good morning!"
ElseIf Hour(Now) >= 18 Then
Response.Write "Good evening!"
Else
Response.Write "Good afternoon!"
End If

W powyższym przykładzie występują dwa porównania oraz Else (tzn. w przeciwnym wypadku), która jest wykonywana w przypadku gdy oba wcześniejsze warunki nie zostaną sprawdzone, tzn. jeśli wartość będzie większa lub równa 12 i mniejsza od 18.

2. Warunek Select Case

Warunek Select Case działa na podobnej zasadzie co warunek If; jednakże, zostaje stworzone wyrażenie w postaci listy warunków. W przypadku większej ilości porównań lepszym rozwiązaniem staje się użycie warunku Select Case. Ogólna składnia wygląda następująco:

Select Case wyrażenie
[Case wartość
[instrukcje] ]
[Case Else wartosc
[instrukcje] ]
End Select

A oto przykład wykorzystania:

Select Case Hour(Now)
Case 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11
Response.Write "Good morning!"
Case 12, 13, 14, 15, 16, 17
Response.Write "Good afternoon!"
Case Else
Response.Write "Good evening!"
End Select

Wszystkie godziny, które określają poranek i popołudnie zostały zawarte w dwóch pierwszych warunkach. W przypadku gdy godzina będzie inna zostanie wykonany warunek Case Else, czyli pokaże się napis "Good evening!".

3. Pętla For … Next

Jeśli chcesz powtórzyć grupę instrukcji określoną ilość razy, możesz użyć pętli For … Next. Składnia:

For licznik = start To koniec [ Step krok ]
[instrukcje]
[Exit For]
[instrukcje]
Next

W przykładzie wygląda to następująco:

For i=0 to 5
Response.Write "Witaj świecie!"
Next

Powyższy fragment wyświetla łańcuch "Witaj świecie!" sześć razy (pętla zaczyna się od wartości zero!).

4. Pętla While … Wend

Jeśli niewiadomo, ile razy powinna zostać wykonana pętla, można użyć pętlę WhileWend. Składnia wygląda następująco:

While warunek
[instrukcje]
Wend

Zauważyć należy, że warunek jest sprawdzany przed wykonaniem instrukcji znajdujących się wewnątrz pętli. Jeśli warunek nie zostanie spełniony pętla nie wykona się ani razu. Przykład:

i=0
While i <= 5
Response.Write "Witaj świecie!"
i=i+1
Wend

Ręczna inicjalizacja zmiennej i nie jest konieczna (VBScript zrobi to sam); jednakże, w praktyce lepiej jest jeśli wartości zmiennych są ustalane. Instrukcja WhileWend jest podobna do pętli ForNext, z tą jednak różnicą, że pętla ForNext sama inkrementuje wartość. W pętli WhileWend trzeba to robić samemu (nie wolno o tym zapomnieć!).

5. Pętla Do … Loop

Pętla DoLoop jest bardzo podobna do pętli WhileWend. Pętla DoLoop posiada dwa rodzaje składni. Pierwsza z nich:

Do [{While | Until} warunek ]
[instrukcje]
[Exit Do]
[instrukcje]
Loop

działa identycznie jak pętla WhileWend. Poniżej została przedstawiona druga możliwość wyglądu pętli DoLoop.

Do
[instrukcje]
[Exit Do]
[instrukcje]
Loop [{While | Until} warunek ]

W tym przypadku instrukcje wewnątrz pętli będą wykonane przed sprawdzeniem warunku, tzn. pętla zostanie wykonana co najmniej jeden raz. Przykład:

Do
Response.Write "Witaj świecie!"
i=i+1
Loop Until i > 5

Powyższa pętla spowoduje pojawianie się napisu "Witaj świecie!" do momentu aż wartość i będzie większa od 5. Można również ostatnią linię zapisać w postaci:

Loop While i <= 5

6. Pętla For … Each

Specjalnym rodzajem pętli jest pętla ForEach. Pozwala ona wyliczyć wszystkie elementy ze zbioru, który jest grupą elementów tego samego typu. Składnia wygląda następująco:

For Each element In grupa|zbiór
[instrukcje]
[Exit For]
[instrukcje]
Next

Na przykład, wyliczenie wszystkich wartości, które zostały wysłane w formie formularza HTML można przedstawić:

For Each item In Request.Form
Response.Write Request.Form(item)
Next


Autor: Krzysztof Stelmach
Strona pochodzi z http://www.stelmach.info/

Dodaj komentarz









 
 
Copyright © 2006-2011 egrafik.pl | Kontakt | Reklama | Projekty domów
jocker