PHP - For Döngüsü

Carissa

Administrator
Katılım
2 Mar 2015
Konular
59,189
Mesajlar
88,439
Çözüm
109
Online süresi
4mo 16d
Reaksiyon Skoru
14,280
Altın Konu
2,398
TM Yaşı
11 Yıl 3 Ay 6 Gün
Başarım Puanı
1,051
MmoLira
695,092
DevLira
234
Ticaret - 0%
0   0   0

ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!




Bir program varsayılan olarak ifadelerin ardışık yürütülmesini izler. Program akışı programdaki önceki ifadelerden herhangi birine yönlendirilirse, bir döngü oluşturur. PHP'deki for ifadesi, bir PHP betiğinde bir döngü oluşturmak için kullanışlı bir araçtır. Bu bölümde, PHP'nin for ifadesini ele alacağız.

"for" Döngüsünün Akış Şeması

Aşağıdaki akış şeması bir for döngüsünün nasıl çalıştığını açıklar:

for ifadesi , bir ifadeyi veya ifade bloğunu kaç kez çalıştırmak istediğinizi bildiğinizde kullanılır.


"for" Döngüsünün Sözdizimi

PHP'deki for ifadesinin sözdizimi C dilindeki for ifadesine benzer.

for (expr1; expr2; expr3){
code to be executed;
}

for anahtar sözcüğü, noktalı virgülle ayrılmış üç ifade içeren bir parantezle takip edilir. Her biri boş olabilir veya virgülle ayrılmış birden fazla ifade içerebilir. Parantezi, kıvırcık parantezlerin içine yerleştirilmiş bir veya daha fazla ifade takip eder. Döngünün gövdesini oluşturur.

Parantez içindeki ilk ifade yalnızca döngünün başlangıcında yürütülür. Genellikle döngü yinelemelerinin sayısının sayacı için başlangıç değerini ayarlamak için kullanılan başlatıcı olarak işlev görür.

Her yinelemenin başında, expr2 değerlendirilir. Eğer true olarak değerlendirilirse, döngü devam eder ve gövde bloğundaki ifadeler yürütülür. Eğer false olarak değerlendirilirse, döngünün yürütülmesi sona erer. Genellikle, expr2 sayacın son değerini belirtir.

expr3 her yinelemenin sonunda yürütülür. Çoğu durumda, bu ifade sayaç değişkenini artırır.

Örnek

For döngüsünün en genel örneği aşağıdaki gibidir:

PHP:
<?php
   for ($i=1; $i<=10; $i++){
      echo "Iteration No: $i \n";
   }
?>

İşte çıktısı;

Iteration No: 1
Iteration No: 2
Iteration No: 3
Iteration No: 4
Iteration No: 5
Iteration No: 6
Iteration No: 7
Iteration No: 8
Iteration No: 9
Iteration No: 10

Sonsuz bir "for" döngüsü

Parantez içindeki üç ifadenin de isteğe bağlı olduğunu unutmayın. Sadece iki noktalı virgül içeren bir for ifadesi sonsuz bir döngü oluşturur.

for ( ; ; ) {
Loop body
}

Sonsuz yinelemeyi durdurmak için, döngünün gövdesinin içinde bir break ifadesi kullanmanız gerekir.

Azalan bir "for" döngüsü

Ayrıca azalan bir for döngüsü de oluşturabilirsiniz. 10'dan 1'e giden bir for döngüsüne sahip olmak için , döngü değişkenini 10 ile başlatın, her yinelemenin başında değerlendirilen ortadaki ifade 1'den büyük olup olmadığını kontrol eder. Her yinelemenin sonunda yürütülecek son ifade onu 1 azaltmalıdır.

PHP:
<?php
   for ($i=10; $i>=1; $i--){
      echo "Iteration No: $i \n";
   }
?>

Aşağıdaki çıktıyı üretecektir:

Iteration No: 10
Iteration No: 9
Iteration No: 8
Iteration No: 7
Iteration No: 6
Iteration No: 5
Iteration No: 4
Iteration No: 3
Iteration No: 2
Iteration No: 1


"for…endfor" yapısını kullanma

Döngü bloğunu başlatmak için ":" (iki nokta üst üste) sembolünü de kullanabilir ve endfor ifadesini bloğun sonuna koyabilirsiniz.

PHP:
<?php
   for ($i=1; $i<=10; $i++):
      echo "Iteration No: $i \n";
   endfor;
?>

"For" döngüsünü kullanarak dizinli bir diziyi yineleme

Dizideki her eleman "0" ile başlayan artan bir indeksle tanımlanır. 5 elemanlı bir dizi mevcutsa, alt sınırı 0 ve üst sınırı 4'tür (dizinin boyutu -1).

Bir dizideki eleman sayısını elde etmek için bir count() fonksiyonu vardır. Bu nedenle, aşağıdaki for ifadesini kullanarak dizinli bir dizi üzerinde yineleme yapabiliriz.

PHP:
<?php
   $numbers = array(10, 20, 30, 40, 50);

   for ($i=0; $i<count($numbers); $i++){
      echo "numbers[$i] = $numbers[$i] \n";
   }
?>

Aşağıdaki çıktıyı üretecektir:

numbers[0] = 10
numbers[1] = 20
numbers[2] = 30
numbers[3] = 40
numbers[4] = 50

"for" Döngüsünü Kullanarak İlişkisel Bir Diziyi Yineleme

PHP'de ilişkisel dizi, anahtar-değer çiftlerinin bir koleksiyonudur. Anahtar ve değeri arasındaki ilişkiyi göstermek için bir ok sembolü (=>) kullanılır. Anahtar dizisini elde etmek için array_keys() fonksiyonunu kullanırız.

Aşağıdaki for döngüsü, kodda tanımlanan $capitals ilişkisel dizisinden her eyaletin başkentini yazdırır.

PHP:
<?php
   $capitals = array(
      "Maharashtra"=>"Mumbai",
      "Telangana"=>"Hyderabad",
      "UP"=>"Lucknow",
      "Tamilnadu"=>"Chennai"
   );
   $keys=array_keys($capitals);

   for ($i=0; $i<count($keys); $i++){
      $cap = $keys[$i];
      echo "Capital of $cap is $capitals[$cap] \n";
   }
?>

İşte çıktısı;

Capital of Maharashtra is Mumbai
Capital of Telangana is Hyderabad
Capital of UP is Lucknow
Capital of Tamilnadu is Chennai

PHP'de İç İçe "for" Döngülerinin Kullanımı

Mevcut bir döngünün gövdesi içerisinde başka bir for döngüsü kullanılırsa, iki döngünün iç içe geçtiği söylenir.

Dış döngünün sayaç değişkeninin her değeri için iç döngünün tüm yinelemeleri tamamlanır.

PHP:
<?php
   for ($i=1; $i<=3; $i++){
      for ($j=1; $j<=3; $j++){
         echo "i= $i j= $j \n";
      }
   }
?>

Aşağıdaki çıktıyı üretecektir:

i= 1 j= 1
i= 1 j= 2
i= 1 j= 3
i= 2 j= 1
i= 2 j= 2
i= 2 j= 3
i= 3 j= 1
i= 3 j= 2
i= 3 j= 3

Bir dizenin bir dizi biçimi olduğunu unutmayın. strlen() fonksiyonu bir dizedeki karakter sayısını verir.

Örnek

Aşağıdaki PHP betiği, her satırda bir dizedeki karakter sayısının artan sayısını yazdırmak için iki iç içe döngü kullanır.

PHP:
<?php
   $str = "TutorialsPoint";
   for ($i=0; $i<strlen($str); $i++){
      for ($j=0; $j<=$i; $j++){
         echo "$str[$j]";
      }
      echo "\n";
   }
?>

Aşağıdaki çıktıyı üretecektir:

T
Tu
Tut
Tuto
Tutor
Tutori
Tutoria
Tutorial
Tutorials
TutorialsP
TutorialsPo
TutorialsPoi
TutorialsPoin
TutorialsPoint
 

Şu an konuyu görüntüleyenler (Toplam : 0, Üye: 0, Misafir: 0)