Merhaba millet! Bu yazıda döngüler konusuna yakından bakacağız.
Web geliştirme dünyasında sık sık karşımıza çıkan önemli bir kavramdan bahsediyoruz: döngüler.
Bir işlemi defalarca yapmamız gerektiğinde, her seferinde aynı kodu yazmak yerine “bunu benim yerime otomatik yap” diyebilsek harika olmaz mıydı?
İşte döngüler tam da bunu yapmamızı sağlar!
Kısaca özetlemek gerekirse, döngüler (loops) bir işlemi belirli bir sayıda ya da belirli bir koşul sağlanana kadar tekrar etmemizi sağlar. Bu sayede hem kodumuz kısa ve düzenli olur hem de işlerimiz çok daha kolaylaşır.
İlginizi çekebilir:
PHP dilinde birden fazla döngü türü vardır:
- for döngüsü
- while döngüsü
- do…while döngüsü
- foreach döngüsü
Bu makalede ise en sık kullanılan iki tanesine, yani for ve while döngülerine, yakından bakacağız.
Ne işe yaradıklarını, nasıl yazıldıklarını ve aralarındaki farkları örneklerle anlatacağız.
Hazırsan başlayalım! 🚀
🔢 PHP’de For Döngüsü
For döngüsü, bir işi belirli sayıda tekrar etmek istediğimizde kullanılır.
Örneğin: “Ekrana 1’den 5’e kadar sayıları yazdır” gibi bir durumda for döngüsü tam aradığımız şeydir.
🧩 For Döngüsünün Temel Yapısı
PHP’de for döngüsünün temel yazımı (sözdizimi) şöyledir:
1 2 3 4 5 | for (başlangıç; koşul; artış) { // Tekrarlanacak kodlar buraya yazılır } |
Şimdi bunu daha anlaşılır hale getirelim 👇
- başlangıç: Sayaç değişkenini başlatır (örneğin
$i = 1;) - koşul: Döngünün ne zamana kadar devam edeceğini söyler (örneğin
$i <= 5;) - artış: Her turdan sonra sayaç nasıl değişecek, onu belirtir (örneğin
$i++, yani 1 artır demek)
💡 Basit Bir Örnek
1 2 3 4 5 6 7 | <?php for ($i = 1; $i <= 5; $i++) { echo "Sayı: $i <br>"; } ?> |
💬 Ekran Çıktısı:
1 2 3 4 5 6 7 | Sayı: 1 Sayı: 2 Sayı: 3 Sayı: 4 Sayı: 5 |
Bu kodda döngü şöyle çalışır:
- Başta
$i = 1olur. - Her turda PHP “$i 5’ten küçük veya eşit mi?” diye kontrol eder.
- Eğer evet, ekrana o sayıyı yazar ve
$ibir artar. $iartık 6 olunca koşul sağlanmaz ve döngü durur.
🔁 PHP’de While Döngüsü
While döngüsü, adından da anlaşılacağı gibi “şart doğru olduğu sürece” çalışır.
Yani belirli bir koşul doğru (true) olduğu müddetçe aynı işlemi tekrar eder.
For döngüsünden farkı şudur:
For döngüsünde kaç kere döneceğini baştan biliriz,
ama while döngüsünde genellikle sadece koşul yazarız — döngü, koşul doğru olduğu sürece devam eder.
🧩 While Döngüsünün Temel Yapısı
1 2 3 4 5 | while (koşul) { // Koşul doğru olduğu sürece çalışacak kodlar } |
Bu yapıyı şöyle düşünebiliriz:
“Şu şart doğru olduğu sürece, bu işi yapmaya devam et!”
💡 Basit Bir Örnek
1 2 3 4 5 6 7 8 9 10 | <?php $sayi = 1; while ($sayi <= 5) { echo "Sayı: $sayi <br>"; $sayi++; // sayaç her turda 1 artıyor } ?> |
💬 Ekran Çıktısı:
1 2 3 4 5 6 7 | Sayı: 1 Sayı: 2 Sayı: 3 Sayı: 4 Sayı: 5 |
Bu örnekte:
$sayideğişkeni 1’den başlıyor.- PHP, her seferinde “$sayi 5’ten küçük veya eşit mi?” diye soruyor.
- Eğer cevap evet ise ekrana yazıyor ve
$sayibir artırılıyor. $sayiartık 6 olduğunda koşul yanlış (false) oluyor ve döngü duruyor.
🧱 Döngülerde break ve continue Kullanımı
Döngüler bazen tam ortasında durmamız veya bazı adımları atlamamız gereken durumlarla karşılaşır.
İşte bu iki durumda devreye giren iki sihirli kelimemiz var:
👉 break ve 👉 continue
🛑 break Nedir?
break, döngüyü tamamen durdurur.
Yani “artık devam etme, buraya kadar yeter!” demektir.
💡 Örnek:
1 2 3 4 5 6 7 8 9 10 | <?php for ($i = 1; $i <= 10; $i++) { if ($i == 6) { break; // 6 olduğunda döngü durur } echo "Sayı: $i <br>"; } ?> |
💬 Ekran Çıktısı:
1 2 3 4 5 6 7 | Sayı: 1 Sayı: 2 Sayı: 3 Sayı: 4 Sayı: 5 |
🔍 Açıklama:
Döngü 1’den başlar, sayıları ekrana yazdırır.
Ama $i değişkeni 6 olduğunda, break komutu devreye girer ve döngü tamamen durur.
Yani 6’dan sonrası çalışmaz.
⏭️ continue Nedir?
continue, döngüyü durdurmaz, sadece o adımı atlar ve bir sonrakine geçer.
Yani “bu turu geç, devam et” anlamına gelir.
💡 Örnek:
1 2 3 4 5 6 7 8 9 10 | <?php for ($i = 1; $i <= 10; $i++) { if ($i == 5) { continue; // 5 olduğunda bu turu atla } echo "Sayı: $i <br>"; } ?> |
💬 Ekran Çıktısı:
1 2 3 4 5 6 7 8 9 10 11 | Sayı: 1 Sayı: 2 Sayı: 3 Sayı: 4 Sayı: 6 Sayı: 7 Sayı: 8 Sayı: 9 Sayı: 10 |
🔍 Açıklama:
Bu örnekte döngü 1’den 10’a kadar sayıları yazdırır.
Ama $i değişkeni 5 olduğunda, continue komutu o adımı atlar.
Yani 5 yazdırılmaz ama döngü devam eder.
🎯 Kısaca Özet:
| Komut | Ne Yapar? | Örnek Durum |
|---|---|---|
break | Döngüyü tamamen bitirir. | Belirli bir sayıya ulaşıldığında döngüyü durdurmak. |
continue | Sadece o turu atlayıp döngüye devam eder. | Belirli bir sayıyı ekrana yazdırmak istemediğimizde. |
🌐 For ve While Döngüleri Nerelerde Kullanılır?
PHP ile web geliştirirken döngüler sadece sayı saymak için değil, veri işlemek, listelemek, sorgu sonuçlarını dolaşmak gibi birçok yerde karşımıza çıkar.
Şimdi iki farklı döngünün hangi durumlarda tercih edildiğine bakalım.
🔢 For Döngüsü – Sayısı Belli Olan Tekrarlarda
For döngüsü, genellikle kaç defa döneceğini önceden bildiğimiz durumlarda kullanılır.
Yani işlem sayısı belirli ise, en uygun seçim budur.
💻 Gerçek Hayat Senaryoları:
- Bir formdaki belirli sayıda alanı kontrol etmek
- Sabit sayıda dosyayı yüklemek veya oluşturmak
- Grafik çubuğu, sayaç, animasyon adımı gibi net aralıklarda işlem yapmak
- Sayfalama (pagination) işlemlerinde belirli sayıda kayıt göstermek
🔸 Örnek:
1 2 3 4 5 6 7 8 | <?php // 10 ürün için stok kontrolü yapalım for ($i = 1; $i <= 10; $i++) { echo "Ürün $i stokta kontrol ediliyor...<br>"; } ?> |
📘 Açıklama:
Burada döngü sayısı baştan belli (10 ürün) olduğu için for döngüsü idealdir.
Bu tür döngüler genellikle sabit liste veya diziler üzerinde çalışırken kullanılır.
🔁 While Döngüsü – Belirsiz Tekrarlarda, Koşula Bağlı İşlemlerde
While döngüsü, ne kadar süreceği koşula bağlı olan işlemler için kullanılır.
Yani döngü, belirli bir şart sağlandığı sürece devam eder.
Bu yüzden while, genellikle veritabanı işlemleri, dosya okuma, kullanıcı girişi, veya dinamik veri çekme gibi durumlarda tercih edilir.
💻 Gerçek Hayat Senaryoları:
- Veritabanından kayıtları satır satır okumak
- Kullanıcıdan doğru bilgi gelene kadar istemek
- API veya dosyadan veri bittiğinde durmak
- Sunucu işlemini hata bitene kadar tekrar denemek
🔸 Örnek (Veritabanı Üzerinden):
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | <?php // MySQL bağlantısı $conn = mysqli_connect("localhost", "root", "", "ornek_veritabani"); // Sorgu gönder $result = mysqli_query($conn, "SELECT * FROM ogrenciler"); // Kayıtlar bittiğinde döngü otomatik durur while ($satir = mysqli_fetch_assoc($result)) { echo "Öğrenci: " . $satir['isim'] . " - Not: " . $satir['not'] . "<br>"; } ?> |
📘 Açıklama:
Burada kaç öğrenci olduğunu bilmiyoruz.while döngüsü, mysqli_fetch_assoc() fonksiyonu sonuç döndürdüğü sürece çalışıyor.
Yani veritabanındaki kayıtlar bittiğinde döngü kendiliğinden sonlanıyor.
🧠 Kısaca Özet:
| Durum | Tercih Edilen Döngü | Örnek Kullanım |
|---|---|---|
| Döngü sayısı baştan belliyse | for | Belirli sayıda ürün, gün, alan, adım |
| Döngü koşula bağlıysa | while | Veritabanı kayıtları, kullanıcı girişi, dosya okuma |
| En az bir kez çalışması gerekiyorsa | do…while | En az bir defa kullanıcı girişi istemek |
🎯 Sonuç
Gördüğün gibi, döngüler PHP’de tekrar eden işleri kolaylaştıran en güçlü araçlardan biridir.
İster belirli sayıda işlem yap, ister koşula bağlı olarak veri çek — for ve while döngüleri doğru kullanıldığında kodunu hem kısaltır hem de çok daha düzenli hale getirir.
For döngüsü, tekrar sayısını bildiğin durumlarda sana hız kazandırır;
While döngüsü ise koşula bağlı veya dinamik verilerle çalışırken büyük esneklik sağlar.
Kısacası:
🧩 “Ne kadar döneceğini biliyorsan for’u, bilmiyorsan while’ı seç!”
Bir sonraki adımda, bu iki döngüyü gerçek projelerde kullanarak pratik yapmayı unutma — çünkü en iyi öğrenme, yazarak ve deneme yanılma ile olur. 💪









Yorum Yap