Döngüler tekrar eden işlemleri yapmakta kullanılır. Başlangıçta anlamsız gelebilir ama 100 üyeli bir web sayfanız varsa hepsinin adını tek tek yazmak yerine döngü kullanarak üç satırda işinizi bitirebilirsiniz.
Daha basit olduğu için FOR döngüsü ile başlayacağız. For döngüsü verilen artırma değerine göre döner. Dönerken aradaki işlemleri tekrar tekrar yapar. yazılması şu şekildedir.
for( $değişken ; dönme şartı ; her dönüşte yapılacak işlem)
$değişken: dönmeye ilk başladığı anda bir değişken üretmeyi sağlar
dönme şartı: Buradaki şart aslında bir IF komutudur. sorulan soru doğru ise dönmeye devam eder.
her dönüşte yapılacak işlem: Dönme sırasında herzaman birer birer arttırmak zorunda değilsiniz. bu işlemi değiştirip üçer üçer veya beşer beşer saydırabilirsiniz.
Örnek:
for ( $say=1 ; $say < 100 ; $say++ )
{
print " şu anda $say sayısındayım";
}
bu komutu çalıştırdığınızda. şöyle bir sonuç çıkar:
şu anda 1 sayısındayım
şu anda 2 sayısındayım
şu anda 3 sayısındayım
şu anda 4 sayısındayım
....
Bu şekilde 99 kere devam eder. verilen şart $say <100 olduğu için $say==100 olduğunda dönme sona erer.
Başka bir örnek: Tek sayıları yazdıralım
for ( $say=1 ; $say < 100 ; $say=$say +2 )
{
print " Tek sayılar: $say ";
}
While DöngüsüWhile döngüsü üsttekinin biraz daha sade halidir. Fakat sadece sayılar için kullanılmaz. While döngüsü tek bir şarta bağlı olduğu için dikkatli kullanmak gerekir.
Yazılışı:
While (Soru)
{
// Soru doğru ise yapılacak işlem
}
örnek: $civciv örneğini tekrar yapalım.
while($civciv=="")
{
print " Açım, Çok acıktııım";
}
Bu örneği çalıştırdığınızda ekrana bir milyon kere Açım yazdığını göreceksiniz. Sebebi ise $civciv´in hiçbir zaman içi dolmuyor ve While her dönüşünde aynı soruyu soruyor, cevap Evet ise dönmeye devam ediyor.
Yukarıdaki örneği aşağıdaki şekilde değiştirdiğimizde ise sadece 10 kere dönecektir.
while($civciv < 10)
{
print " Açım, Çok acıktııım";
$civciv = $civciv + 1 ;
}
Bu örnekteki en önemli kısım aslında $civciv = $civciv + 1 satırıdır, Eğer bunu anlayabiliyorsanız programlama sizin için tamam demektir.
Şimdi bu kısma dikkatle okuyalım:
Programlama yaparken bilgisayar eşitliğin sağındaki işlemi yapar ve sol tarafa aktarır. Sağ taraftaki değişken yapılan işlemden etkilenmez.
Bu işlem sonunda $ciciv bir sayı arttırılmış olur. Diyelim ki: $civciv=5 bu işlemden sonra $civciv=6 olmuştur.
Soru: Aşağıdaki kodun sonucu kaç yazar?$say=6;
$kutu= 3;
while($say < 100)
{
$kutu= 10 ;
$say = $say + $kutu;
}
print " $say ";
Gördüğünüz üzere $say 6 değerinden başladı ve en son verilen değer 96 olur.
art $say <100 olduğu için;
fakat döngü her döndüğünde değer 10 artığı için ve bir defa daha artarsa 100 ü geçeceğinden dolayı son değerde 96 + 10 = 106 olur.