for
(PHP 4, PHP 5, PHP 7, PHP 8)
for
döngüsü, PHP'deki en karmaşık döngü yapısıdır.
C'deki karşılığıyla aynı biçimde çalışır. for
döngüsünün sözdimi:
İlk ifade (ifade1) döngünün en başında bir kereliğine
koşulsuz olarak çalıştırılır.
Her yinelemenin başında ifade2 yeniden
değerlendirilir. Bu ifadeden true
sonucu elde edilirse, döngüye devam
edilir ve döngünün etki alanındaki deyimler çalıştırılır. Bu ifadeden
false
sonucu elde edildiğinde etki alanındaki deyimler
çalıştırılmaksızın döngü sonlandırılır.
ifade3 ise her yinelemenin sonunda çalıştırılır.
Bu ifadelerin herbirini boş bırakmak da mümkündür.
ifade2nin boş olması, döngünün sonsuza kadar
çalıştırılacağı anlamına gelir (PHP, C'deki gibi bu durumu true
olarak
değerlendirir). Döngülerden genellikle bir şarta bağlı olarak break
deyimi ile çıkmak isteyeceğiniz düşünüldüğünde, bu durum düşündüğünüz
kadar kullanışsız değildir.
Aşağıdaki örnekleri ele alalım. Hepsi de 1'den 10'a kadar sayıları
görüntülemektedir:
Elbette, kullandığımız ilk örnek en güzel örnek olarak gözükmektedir (ya
da belki dördüncü örnek), ancak birçok durumda for
döngüsü içerisinde boş ifadeler kullanmayı oldukça kullanışlı
bulabilirsiniz.
PHP, iki noktalı
sözdizimini for
döngüleri için de
desteklemektedir.
Çoğu kullanıcının yaptığı gibi diziler üzerindeki yinelemeleri şöyle
yapabilirsiniz:
Her yinelemede dizinin boyutları yeniden
hesaplandığından kod yavaş çalışabilir. Örnekte boyut değişmediğinden
count() işlevini defalarca çağırmak yerine dizi boyutunu
bir değişkene atıp ifadede bu değişken kullanılarak kod en iyilenebilir: