PHP programlama dilinde döngüler, belirli kod bloklarının tekrar tekrar çalıştırılmasını sağlayan kontrol yapılarıdır. Döngüler sayesinde aynı işlemi birden fazla kez yazmak yerine daha kısa, düzenli ve anlaşılır kodlar oluşturulabilir.
PHP'de kullanılan temel döngüler arasında for, while, do-while ve foreach bulunur. For döngüsü, genellikle bir işlemin kaç kez tekrarlanacağının belli olduğu durumlarda kullanılır. Başlangıç değeri, koşul ve sayaç değişikliği tek bir satırda tanımlanabilir.
PHP For Döngüsü Nedir?
PHP'de for döngüsü, belirlenen bir koşul doğru olduğu sürece belirli bir kod bloğunun tekrar çalıştırılmasını sağlar. Döngünün başlangıç değeri, devam koşulu ve her tekrarda yapılacak değişiklik for ifadesinin parantezleri içerisinde belirtilir.
For döngüsünün genel söz dizimi şu şekildedir:
<?php
for (baslangic; kosul; artis_veya_azalis) {
// Tekrarlanacak kodlar
}
?>
For döngüsünde üç temel bölüm bulunur. Başlangıç bölümünde sayaç değişkeni tanımlanır ve ilk değeri atanır. Koşul bölümünde döngünün devam edip etmeyeceği kontrol edilir. Artış veya azalış bölümünde ise her tekrarın sonunda sayaç değişkeninin nasıl değişeceği belirlenir.
Döngü ilk olarak başlangıç işlemini gerçekleştirir. Ardından koşulu kontrol eder. Koşul doğruysa döngü içerisindeki kodlar çalıştırılır ve sayaç güncellenir. Bu işlem koşul yanlış olana kadar devam eder.
PHP For Döngüsü Örneği
For döngüsünü anlamanın en kolay yolu, 1'den 5'e kadar olan sayıları ekrana yazdıran bir örnek incelemektir.
<?php
for ($i = 1; $i <= 5; $i++) {
echo $i . "<br>";
}
?>
Ekran çıktısı:
1
2
3
4
5
Bu örnekte $i değişkenine başlangıçta 1 değeri atanır. $i <= 5 koşulu doğru olduğu sürece sayı ekrana yazdırılır. Her tekrarın sonunda $i++ ifadesiyle değişkenin değeri bir artırılır.
Sayaç 6 olduğunda koşul yanlış hale gelir ve döngü sona erer. Böylece 1'den 5'e kadar olan sayılar ekrana yazdırılmış olur.
PHP For Döngüsü Örnekleri
For döngüsü; sayıları sıralamak, matematiksel işlemler yapmak, dizilerdeki elemanlara erişmek ve belirli sayıda işlem gerçekleştirmek gibi birçok farklı alanda kullanılabilir.
Örnek 1: 1'den 10'a Kadar Sayıları Yazdırma
<?php
for ($i = 1; $i <= 10; $i++) {
echo $i . " ";
}
?>
Bu kodda sayaç 1'den başlar ve 10'a kadar ilerler. Her tekrar sırasında sayı ekrana yazdırılır ve sayaç bir artırılır. Sonuç olarak 1'den 10'a kadar olan sayılar aynı satırda gösterilir.
Örnek 2: 10'dan 1'e Kadar Geri Sayma
For döngüsü yalnızca sayıları artırmak için kullanılmaz. Sayaç değeri azaltılarak geri sayım işlemi de yapılabilir.
<?php
for ($i = 10; $i >= 1; $i--) {
echo $i . "<br>";
}
?>
Ekran çıktısı:
10
9
8
7
6
5
4
3
2
1
Bu örnekte sayaç 10'dan başlar ve her tekrar sonunda $i-- ifadesiyle bir azaltılır. Sayaç 1'in altına düştüğünde koşul yanlış olur ve döngü sona erer.
Örnek 3: Çift Sayıları Yazdırma
Belirli bir aralıktaki çift sayıları ekrana yazdırmak için sayaç ikişer artırılabilir.
<?php
for ($i = 2; $i <= 20; $i += 2) {
echo $i . " ";
}
?>
Bu program 2'den 20'ye kadar olan çift sayıları ekrana yazdırır. $i += 2 ifadesi, sayaç değişkeninin değerini her adımda iki artırır. Bu sayede yalnızca çift sayılar elde edilir.
Örnek 4: 1'den 100'e Kadar Sayıların Toplamını Bulma
For döngüsü, matematiksel işlemleri tekrarlamak ve belirli sayıların toplamını hesaplamak için de kullanılabilir.
<?php
$toplam = 0;
for ($i = 1; $i <= 100; $i++) {
$toplam += $i;
}
echo "Toplam: " . $toplam;
?>
Ekran çıktısı:
Toplam: 5050
Bu örnekte $toplam değişkeni başlangıçta 0 olarak tanımlanır. Döngü her çalıştığında sayaç değeri toplam değişkenine eklenir. Sayaç 100'ü geçtiğinde döngü sona erer ve hesaplanan sonuç ekrana yazdırılır.
$toplam += $i ifadesi, $toplam = $toplam + $i ifadesinin kısa yazımıdır. Bu operatör sayesinde değişkenin mevcut değerine yeni bir sayı eklenebilir.
Örnek 5: For Döngüsü ile Dizi Elemanlarını Yazdırma
For döngüsü, dizilerdeki elemanlara indeks numaraları üzerinden erişmek için de kullanılabilir. PHP dizilerinde sayısal indeksler genellikle 0'dan başladığı için sayaç değişkeni de 0'dan başlatılır.
<?php
$meyveler = ["Elma", "Armut", "Muz", "Cilek"];
for ($i = 0; $i < count($meyveler); $i++) {
echo $meyveler[$i] . "<br>";
}
?>
Ekran çıktısı:
Elma
Armut
Muz
Cilek
Bu örnekte $meyveler isimli bir dizi oluşturulur. count() fonksiyonu dizinin eleman sayısını verir. Sayaç 0'dan başlar ve dizinin eleman sayısından küçük olduğu sürece her eleman ekrana yazdırılır.
Dizi elemanları üzerinde işlem yaparken foreach döngüsü de tercih edilebilir. Ancak indeks numarasına ihtiyaç duyulan durumlarda for döngüsü kullanışlıdır.
PHP İç İçe For Döngüsü
Bir for döngüsünün içerisinde başka bir for döngüsü kullanılmasına iç içe döngü denir. Bu yapı özellikle tablolar oluşturmak, satır ve sütunları dolaşmak ve çarpım tablosu gibi işlemleri gerçekleştirmek için kullanılır.
Aşağıdaki örnekte 1'den 3'e kadar olan sayıların çarpım tablosu oluşturulmuştur:
<?php
for ($i = 1; $i <= 3; $i++) {
for ($j = 1; $j <= 3; $j++) {
echo $i . " x " . $j . " = " . ($i * $j) . "<br>";
}
echo "<br>";
}
?>
Bu kodda dış döngü $i değişkenini, iç döngü ise $j değişkenini kontrol eder. Dış döngünün her adımında iç döngü baştan sona çalışır. Böylece farklı sayıların çarpım sonuçları ekrana yazdırılır.
İç içe döngülerde işlem sayısı hızla artabileceği için döngü sınırlarının doğru belirlenmesi önemlidir.
PHP For Döngüsünde Kullanılan Artırma ve Azaltma Operatörleri
For döngüsünde sayaç değişkenini değiştirmek için farklı operatörler kullanılabilir. Bu operatörler döngünün hangi aralıklarla ilerleyeceğini belirler.
| İfade |
Açıklama |
| $i++ |
Değeri bir artırır. |
| $i-- |
Değeri bir azaltır. |
| $i += 2 |
Değeri iki artırır. |
| $i -= 2 |
Değeri iki azaltır. |
| $i += 5 |
Değeri beş artırır. |
Örneğin, $i += 5 ifadesi kullanıldığında sayaç her tekrarda beş artar. Bu sayede belirli aralıklarla ilerleyen döngüler oluşturulabilir.
PHP For Döngüsünde Dikkat Edilmesi Gerekenler
For döngüsü kullanılırken bazı hatalara dikkat edilmelidir. En sık karşılaşılan sorunlardan biri, koşulun veya sayaç değişikliğinin yanlış yazılmasıdır.
Örneğin, aşağıdaki kodda sayaç değişkeni artırılmadığı için sonsuz döngü oluşur:
<?php
for ($i = 1; $i <= 5; ) {
echo $i . "<br>";
}
?>
Bu örnekte $i değişkeninin değeri sürekli 1 olarak kalır. $i <= 5 koşulu her zaman doğru olduğu için döngü sona ermez. Bu durum sunucuda gereksiz işlem yüküne neden olabilir.
Doğru kullanım şu şekildedir:
<?php
for ($i = 1; $i <= 5; $i++) {
echo $i . "<br>";
}
?>
Bu örnekte sayaç artırıldığı için koşul belirli bir noktada yanlış hale gelir ve döngü sonlanır.
Ayrıca döngü koşulunun doğru belirlenmesi gerekir. Örneğin, $i < 5 ile $i <= 5 ifadeleri arasında fark vardır. İlk ifade 5 sayısını kapsamazken ikinci ifade 5 sayısını da kapsar.
PHP For ve While Döngüsü Arasındaki Fark
For ve while döngüleri benzer amaçlarla kullanılsa da farklı durumlarda avantaj sağlar. For döngüsü, sayaç değişkeninin başlangıç değeri, koşulu ve değişiminin tek bir yerde tanımlanması nedeniyle tekrar sayısının belirgin olduğu işlemlerde kullanışlıdır.
While döngüsü ise bir koşul doğru olduğu sürece çalışır. Sayaç değişkeni gibi kontrol işlemleri genellikle döngü bloğunun içerisinde gerçekleştirilir. Tekrar sayısının önceden belli olmadığı durumlarda while döngüsü daha uygun olabilir.
Her iki döngü de doğru koşullar oluşturulduğunda benzer işlemleri gerçekleştirebilir. Hangi yapının seçileceği, programın ihtiyacına ve kodun daha anlaşılır olmasına bağlıdır.
Sonuç
PHP'de for döngüsü, belirli bir kod bloğunu koşula bağlı olarak tekrar çalıştırmak için kullanılan temel kontrol yapılarından biridir. Başlangıç değeri, devam koşulu ve sayaç değişikliği tek bir ifadede tanımlandığından özellikle belirli sayıda tekrar yapılması gereken işlemlerde kullanışlıdır.
Sayıları sıralama, toplam hesaplama, dizi elemanlarına erişme ve iç içe döngülerle tablo oluşturma gibi işlemlerde for döngüsünden yararlanılabilir. Sayaç değişkeninin doğru güncellenmesi ve koşulun doğru kurulması, döngünün beklenen şekilde çalışması açısından önemlidir.