PHP ile Döngüler (for, foreach, while, do..while)
Blog'a Dön

PHP ile Döngüler (for, foreach, while, do..while)

Buğra Şıkel

PHP ile döngüler for, foreach, do, while

PHP’de döngüler, belli bir kod bloğunun belli bir koşul sağlandığı sürece tekrar edilmesini sağlar. PHP’de döngüleri yönetmek için for, foreach, while, do...while gibi farklı döngü yapıları kullanılır. Bu yazımızda sırasıyla PHP’de kullanılan döngüleri inceleyeceğiz, kullanım örneklerine bakacağız.

PHP’de for döngüsü

PHP’de for döngüsü, belli bir koşula göre belirli bir sayıda döngü döndürmek için kullanılır. Örneğin, bir dizinin elemanlarını tek tek yazdırmak için kullanılabilir. Aşağıda bir örnek gösterilmiştir:

$numbers = array(1, 2, 3, 4, 5);

for ($i = 0; $i < count($numbers); $i++) {
  echo $numbers[$i];
}

Bu örnekte, for döngüsünün ilk bölümünde $i değişkeninin başlangıç değeri 0 olarak ayarlanır. İkinci bölümde ise, döngünün koşulu belirlenir: $i değişkeninin $numbers dizisinin eleman sayısından küçük olması gerektiği belirtilir. Döngü içerisinde ise, her seferinde $i  değişkeninin değeri 1 artırılır ve $numbers  dizisinin $i  indisli elemanı ekrana yazdırılır. Bu sayede, döngü dizinin tüm elemanlarını tek tek yazdıracaktır.

PHP’de foreach döngüsü

PHP’de foreach döngüsü, bir dizinin tüm elemanlarını tek tek gezmek için kullanılır. Örneğin, bir dizinin tüm elemanlarını ekrana yazdırmak için kullanılabilir:

$numbers = array(1, 2, 3, 4, 5);

foreach ($numbers as $number) {
  echo $number;
}

Bu örnekte, foreach döngüsü $numbers dizisinin tüm elemanlarını tek tek gezer ve her seferinde döngü içerisinde o elemanın değerini $number değişkenine atar. Döngü içerisinde, $number değişkeninin değeri ekrana yazdırılır. Böylece, döngü tüm dizinin elemanlarını tek tek yazdıracaktır.

PHP’de while döngüsü

PHP’de  while  döngüsü, belli bir koşul sağlandığı sürece kod bloğunu tekrar eden bir döngü türüdür. Örneğin, bir sayının karesinin toplamını hesaplamak için kullanılabilir:

$i = 1;
$sum = 0;

while ($i <= 10) {
  $sum += $i * $i;
  $i++;
}

echo $sum; // 385

Bu örnekte, while  döngüsünün koşulu $i değişkeninin 10’dan küçük veya eşit olmasıdır. Bu koşul sağlandığı sürece, döngü içerisindeki kod bloğu çalıştırılır. Kod bloğu içerisinde, $sum  değişkenine $i değişkeninin karesi eklenir ve $i değişkeninin değeri 1 artırılır. Bu sayede, while  döngüsü 10 kez dönecek ve döngü sonlandığında $sum değişkeninin değeri 1’den 10’a kadar olan sayıların karelerinin toplamı olan 385 olacaktır.

PHP’de do…while döngüsü

PHP’de do...while döngüsü, belli bir koşul sağlandığı sürece kod bloğunu tekrar eden bir döngü türüdür. Ancak, while döngüsüne göre do...while döngüsünde kod bloğu en az bir kez çalıştırılır, daha sonra koşul kontrol edilir. Örneğin, bir sayının karesini bulmak için kullanılabilir:

$number = 5;

do {
  $number *= $number;
} while ($number < 1000);

echo $number; // 625

Bu örnekte, do...while döngüsü ilk olarak kod bloğunu çalıştırır ve $number değişkeninin karesini bulur (25). Daha sonra koşul kontrol edilir ve koşul sağlanmadığı için döngü sonlanır. Böylece, döngü sadece bir kez çalışmış olur ve $number değişkeninin değeri 25 olmuş olur. do...while döngüsünün avantajı, kod bloğunun en az bir kez çalıştırılmasını sağlamasıdır.

do...while döngüsü ile ilgili bir örnek daha vermek istiyorum. Örneğin bir inputtan fotoğraf bize upload ediliyor. Ancak biz bu fotoğrafın uzunluğunun ya da genişliğinin 2000px üstündeyse %50 azaltılmasını ve o şekilde kaydedilmesini istiyoruz. Bunu yapacak bir fonksiyon yazmamız lazım ancak şöyle bir durum var, eğer ilk %50 düşürmeden hala 2000px altına inmediyse? İşte burada do...while döngüsü bize yardımcı olacak. Sonucumuz 2000px altına düşene kadar do...while döngüsünde tutacağız. Gelin örneğimizi kodlayalım.

function resize_image_percent($uzunluk, $genislik) {
  do {
    if ($uzunluk > 2000 || $genislik > 2000) {
      $uzunluk = $uzunluk * 0.5;
      $genislik = $genislik * 0.5;
    }
  } while ($uzunluk > 2000 || $genislik > 2000);

  return array($uzunluk, $genislik);
}

 

Bu ve benzeri önemli ipuçlarını öğrenmek için diğer yazılarıma da göz atabilirsiniz.

Web sitesine mi ihtiyacınız var ?

Bunları da beğenebilirsiniz

PHP ile Hataları Yakalayıp Veritabanında Saklamak
9 Aralık 2022

PHP ile Hataları Yakalayıp Veritabanında Saklamak

Hatalar, bir uygulamanın işleyişinde beklenmeyen durumları ifade eder. Bu durumlar, uygulamanın doğru bir şekilde çalışmamasına, hata mesajları gösterilmesine ve hatta çökmesine neden olabilir. Bu nedenle,…

Devamını Oku
PWA Nedir? PWA&#8217;nın Faydaları Nelerdir?
20 Ekim 2022

PWA Nedir? PWA’nın Faydaları Nelerdir?

Bu yazımızda PWA (Progressive Web App) nedir? Ne için kullanılır? Faydaları nelerdir? Bize neler kazandırır? Nasıl Yüklenir? Sorularına cevaplar vereceğiz. PWA (Progressive Web App) Nedir…

Devamını Oku
Bir Web Siteye Sahip Olmanız İçin 10 Neden
10 Ekim 2022

Bir Web Siteye Sahip Olmanız İçin 10 Neden

Pazarda rekabet etmek istiyorsanız, çevrimiçi bir varlığa ve daha da önemlisi size uygun olarak tasarlanmış bir web sitesine sahip olmalısınız. Belki 10 yıl önce alaka…

Devamını Oku
Ask AI