Krutzo 1
Krutzo
shrpnl 1
shrpnl
Best Studio 1
Best Studio
D 1
delimuratt
Aliyldrim 1
Aliyldrim
Mt2Hizmet 1
Mt2Hizmet
noisiv 1
noisiv
Manwe Work 1
Manwe Work
melankolıa18 1
melankolıa18
Agora Metin2 1
Agora Metin2
Cannn6161 1
Cannn6161
Hikaye Ekle
Reklam vermek için turkmmo@gmail.com

PHP - While Döngüsü

Carissa

Administrator
Telefon Numarası Onaylanmış Üye TC Kimlik Numarası Doğrulanmış Üye Turkmmo Discord Nitro Booster
Admin
VIP Üye
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 PHP betiğinde döngü oluşturmanın en kolay yolu while yapısıdır. PHP'deki while döngüsünün sözdizimi C dilindekine benzerdir. Döngü gövde bloğu, while ifadesindeki Boole ifadesi doğru olduğu sürece tekrar tekrar yürütülecektir.

Aşağıdaki akış şeması PHP'de while döngüsünün nasıl çalıştığını anlamanıza yardımcı olur.

php_while_loop.jpg

İfadenin değeri her seferinde döngünün başında kontrol edilir. While ifadesi en baştan false olarak değerlendirilirse, döngü bir kez bile çalıştırılmaz. İfade bloğun yürütülmesi sırasında false olsa bile, yürütme yinelemenin sonuna kadar durmaz.

While döngüsünün sözdizimi aşağıdaki gibi ifade edilebilir:

while (expr){
statements
}

Örnek

Aşağıdaki kod, PHP'de while döngüsünün nasıl çalıştığına dair basit bir örnek gösterir. $x değişkeni, döngü başlamadan önce 1 olarak başlatılır. Döngü gövdesinden, 10'dan küçük veya ona eşit olduğu sürece yürütülmesi istenir. Döngü gövdesindeki echo ifadesi, geçerli yineleme numarasını yazdırır ve x değerini artırır, böylece koşul sonunda yanlış olur.

PHP:
<?php
   $x = 1;

   while ($x<=10) {
      echo "Iteration No. $x \n";
      $x++;
   }
?>

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

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

Test koşulunun her yinelemenin başında kontrol edildiğini unutmayın. Koşul döngü içinde yanlışa dönse bile, yürütme yinelemenin sonuna kadar durmayacaktır.


Örnek

Aşağıdaki örnekte, "x" her yinelemede 3 artırılır. Üçüncü yinelemede, "x" 9 olur. Test koşulu hâlâ doğru olduğundan, "x"in 12 olduğu bir sonraki tur gerçekleşir. Koşul yanlışa döndüğünde, döngü durur.

PHP:
<?php
   $x = 0;
   while ($x<=10){
      $x+=3;
      echo "Iteration No. $x \n";          
   }
?>

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

Iteration No. 3
Iteration No. 6
Iteration No. 9
Iteration No. 12

Örnek

Döngü değişkeninin her zaman artması gerekmez. Döngü değişkeninin başlangıç değeri, döngünün sona ermesi gereken değerden büyükse, azaltılmalıdır.

PHP:
<?php
   $x = 5;
   while ($x>0) {
      echo "Iteration No. $x \n";
      $x--;
   }
?>

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

Iteration No. 5
Iteration No. 4
Iteration No. 3
Iteration No. 2
Iteration No. 1


"while" ile bir diziyi yineleme

PHP'de indeksli dizi, her biri 0'dan başlayarak artan bir indeksle tanımlanan öğeler topluluğudur.

"x" dizinin uzunluğuna ulaşana kadar x'inci indeksteki öğeye tekrar tekrar erişerek bir while döngüsü oluşturarak bir diziyi dolaşabilirsiniz. Burada, "x" her yinelemede artırılan bir sayaç değişkenidir. Ayrıca dizinin boyutunu döndüren bir count() fonksiyonuna da ihtiyacımız var.

Örnek

Aşağıdaki örneğe bir göz atın.

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

   while ($x<$size) {
      echo "Number at index $x is $numbers[$x] \n";
      $x++;
   }
?>

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

Number at index 0 is 10
Number at index 1 is 20
Number at index 2 is 30
Number at index 3 is 40
Number at index 4 is 50

İç içe "while" Döngüleri

Bir while döngüsünü başka bir while döngüsünün içine dahil edebilirsiniz . Hem dış hem de iç while döngüleri, her yinelemeden sonra artırılan iki ayrı değişken tarafından kontrol edilir.

Örnek

PHP:
<?php
   $i=1;
   $j=1;

   while ($i<=3){
      while ($j<=3){
         echo "i= $i j= $j \n";
         $j++;
      }
      $j=1;
      $i++;
   }
?>

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

İç while döngüsünün sayaç değişkeni olan "j"nin tüm değerleri aldıktan sonra tekrar 1 olarak başlatıldığını, böylece "i"nin bir sonraki değeri için "j"nin tekrar 1'den başladığını unutmayın.


Bir Dizgedeki Karakterleri Gezinme

PHP'de bir dize, karakterlerin indekslenmiş bir koleksiyonu olarak düşünülebilir. Bu nedenle, "0"dan dizenin uzunluğuna giden bir sayaç değişkeni olan bir while döngüsü, bir seferde bir karakter almak için kullanılabilir.

Örnek

Aşağıdaki örnek, verilen bir dizgedeki sesli harflerin sayısını sayar. Uzunluğu elde etmek için strlen()'i ve karakterin sesli harflerden biri olup olmadığını kontrol etmek için str_contains()'i kullanırız.

PHP:
<?php
   $line = "PHP is a popular general-purpose scripting language that is especially suited to web development.";
   $vowels="aeiou";
   $size = strlen($line);
   $i=0;
   $count=0;

   while ($i<$size){
      if (str_contains($vowels, $line[$i])) {
         $count++;
      }
      $i++;
   }
   echo "Number of vowels = $count";
?>

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

Number of vowels = 32

"endwhile" İfadesini Kullanma

PHP ayrıca while döngüsü için alternatif bir sözdizimi kullanmanıza da olanak tanır. Birden fazla ifadeyi kıvırcık parantez içinde birleştirmek yerine, döngü gövdesi koşuldan sonra bir ":" (iki nokta üst üste) sembolü ve sonunda endwhile ifadesiyle işaretlenir.

Örnek

PHP:
<?php
   $x = 1;
   while ($x<=10):
      echo "Iteration No. $x \n";
      $x++;
   endwhile;
?>

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

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

Endwhile ifadesinin noktalı virgülle bittiğine dikkat edin.
 

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

Geri
Üst