PHP For Döngüsü Ve İç İçe Döngüler Nasıl Kullanılır?
Php for döngüsü de while döngüsü gibi bizim birden fazla çalıştırmak istediğimiz kod bloğunu tekrarlatmaya yarar. Döngüler teknik olarak aynı işi yaparlar ama kullanım şekilleri farklıdır. Hangi döngüyü kullanacağınız tamamen size bağlı. For döngüsünü öğrendikten sonra İşlerimizi biraz daha ileri seviyeye taşıyıp iç içe döngü kullanımını göreceğiz.
Php For Döngüsü Yapısı
For döngüsünün yapısı aşağıdaki gibidir.
<?php for($baslangicDegeri;$kosul;$donguDegiskeniIslemi) { // çalışacak kodlar } ?>
While döngüsünde döngü değişkenimize döngüden önce bir değer veriyorduk ve döngü içinde artırma azaltma gibi işlemleri yapıyorduk. For döngüsünde ise for yazdıktan sonra parantezler içine döngü değişkenimizin başlangıç değeri, döngü koşulumuz ve döngü değişkeni işlemi(artır azalt,çarp böl) yapıyoruz. Küçük bir örnek verecek olursak:
Örneğin: 1-10 arasındaki sayıların toplamını ekrana yazdıran bir örnek yapalım.
<?php $toplam = 0; for($i=1;$i<=10;$i++) { $toplam+=$i; } echo "1-10 arasındaki sayıların toplamı : $toplam"; ?>
Kod yapımızı açıklayacak olursak:
- Toplamanın etkisiz elemanı olan 0 ı $toplam değişkenine atadık.
- daha sonra $i diye bir döngü değişkeni oluşturup bunun başlangıç değerini 1 olarak tanımladık.
- $i<=10 koşulumuzu yazdık ve döngü değişkenimizi 1er 1er artırdık.
- $toplam değişkenimizle $i değişkenimizin o anki değerini topladık.
- döngü bittikten sonra ekrana bilgi mesajı verdik.
Genel olarak döngü değişkenlerimizi $i,$j,$k gibi değişkenlerle gösteririz. Ama bu değişkenlerin isimlerinin böyle olması şart değildir.
İç İçe Döngüler
For döngüsü olsun, while döngüsü olsun tüm döngüleri iç içe kullanmamızda herhangi bir sakınca yoktur. for döngüsü içine while, while içinde for gibi istediğimiz şekilde kullanım kombinasyonu yapabiliriz. İç içe döngüleri ilerleyen derslerimizde göreceğimiz diziler dersimizde ne kadar çok işe yaradığını göreceğiz. İç içe döngülerle örnek yapacak olursak:
Örneğin : 1 den 15 e kadar olan sayıların faktoriyelini bulan programımızı for ve while döngülerini kullanarak bulalım.
<?php $sayi = 1; while($sayi<=15) { $carpim = 1; for($i=1;$i<=$sayi;$i++) { $carpim*=$i; } echo "$sayi sayısının faktoriyeli: $carpim <br/>"; $sayi++; } ?>
Kodumuzu açıklayacak olursak :
- Sayı Değişken tanımladık ve 1 değerini verdik.
- While döngüsü içine $sayi değişkenimiz 15 ten küçük yada eşit oluncaya kadar çalıştırdık.
- Daha sonra $carpim değişkeni oluşturduk ve değerini çarpmanın etkisiz elemanı olan 1 yaptık.
- Daha sonra for döngümüz içinde faktoriyel işlemini yapıyoruz. ve sonuç olarak hangi sayının faktoriyelini bulduğumuzu ekrana yazdırıyoruz.
Sonsuz Döngülerin Kullanım Şekli
Sonsuz döngü oluşturmanın en basit şekli while döngüsünde koşul yerine 1(true ) yazarak, for döngüsünde ise koşul ve değişken yerleri boş bırakılarak yani sadece iki tane noktalı virgül(;;) kullanılarak yapılır.
Örneğin:
<?php while(1) { // sonsuz döngüdeyiz. } for(;;) { // sonsuz döngüdeyiz } ?>
Peki iyi güzel sonsuz döngüye girdik te nasıl çıkacağız biz bu sonsuz döngüden ?
Break ve Continue deyimleri
Php Dersleri – Switch case deyimi dersimizde break deyimini biraz da olsa kullanmıştık.
Break deyimi: girilen kod bloğunun bir dışına çıkmamızı sağlar. en basit anlama yöntemi hangi döngüye ait süslü parantezin içine break yazarsak o süslü parantezin bir dışına çıkar.
Continue deyimi: Döngü içinde continue yazdığımız kısımdan sonraki kodlar çalıştırılmaz ve döngü başa dönerek bir sonraki adıma geçer.
Break ve Continue ile ilgili örnekler
1-1000 arasında rastgele üretilen sayımızın 5 ile bölümünden kalan 0 oluncaya kadar devam eden programı hem for hemde while döngüsü ile yazalım.
While ile:
<?php while(1) { $sayi = rand(1,1000); // rand(mindeger,maxdeger) fonksiyonu ile php de rastgele sayı üretiriz. if($sayi % 5 == 0) { echo "$sayi değişkeni 5 e bölünüyor döngü burda biter. <br/>"; break; }else { echo "$sayi değişkeni 5 e bölünmediği için döngü devam ediyor.<br/>"; } } ?>
For ile:
<?php for(;;) { $sayi = rand(1,1000); if($sayi % 5 == 0) { echo "$sayi değişkeni 5 e bölünüyor döngü burda biter. <br/>"; break; }else { echo "$sayi değişkeni 5 e bölünmediği için döngü devam ediyor.<br/>"; } } ?>
Break deyimi ile döngüyü nasıl sonlandırırız. görmüş olduk.
Bu dersimizin de sonuna geldik bir sonraki dersimiz olan Php Dersleri – Diziler dersimizde görüşmek üzere .
Konuyla ilgili yorumlarınızı konu altından yapabilirsiniz, ayrıca sorularınızı yine konu altındaki yorum bölümünden sorabilirsiniz.
PHP’de For Döngüsünü bu yazımızda gördük. Aşağıdaki linke tıklayarak daha bir çok içeriğe ulaşarak bilginizi artırabilirsiniz. Ayrıca aşağıdaki Sosyal Medya linklerine tıklayarak bizi Sosyal Medya üzerinden de takip edebilirsiniz.
https://yazilimdelisi.com/category/web-gelistirme/php/

