
PHP’de Döngüler
İçindekiler
Sevgili arkadaşlar bu yazımda PHP’de döngülerden bahsedeceğim. Başka bir ifadeyle çevrim olarak da bilinen ama programcılar arasında döngü olarak daha sık karşılaştığımız bu yapılar diğer programlama dillerinde olduğu gibi PHP’de de önemli bir yer tutmaktadır. Döngülerin temel mantığı, çalışma prensibi, kullanım yerleri ve çeşitlerinden bahsedeceğiz. Keyifli okumalar dileğiyle 🙂
Döngüler tekrarın ihtiyaç duyulduğu işlemlerin gerçekleşmesi için kullanılan yapılardır. Her türden veriyi istenilen bir değere göre döngüler yardımıyla yapabilmekteyiz. Birçok kez gerçekleşmesini istediğimiz eylemi döngüler sayesinde gerçekleştirebiliriz. PHP’de 4 tane döngü çeşidi vardır. Bu döngüler teknik olarak aynı eylemi yapmakla birlikte sadece kullanımları konusunda farklılık göstermektedir. Sırası ile bu döngülere ve kullanımlarına bakalım.
For Döngüsü
En çok kullanılan döngü for döngüsüdür. Uygulanış itibari ile döngüsel işlevimizi rahatlıkla gerçekleştirebilmekteyiz. For döngüsü belli değerler arasında artarak devam etmekle birlikte azalarak da devam etmektedir. For döngüsünün yapısında alacağı parametreler şu şekildedir.
1.parametre : Başlangıç değeri
2.parametre : Bitiş değeri (Koşul belirleme)
3.parametre : Artış değeri
Bir örnek ile for döngümüzün çalışma durumunu gözlemleyelim.
<?php echo "Mutfağamıza Hoşgeldiniz <br><br>"; for($i = 1; $i < 10; $i++) { echo $i ." . Webmaster Mutfağı <br>"; } ?>
Örneğimizde görüldüğü gibi $i isminde bir değişken oluşturduk. Bu değişkenimizin başlangıç değeri olarak 1 , bitiş değeri için 10 (10 dahil değil) ve artış miktarımız 1 olduğu belirlemiş olduk. For döngümüz 9 kere dönmesi sebebi ile çıktı olarak ekrana 1’den 9’a kadar Webmaster Mutfağı yazılmasını sağlamış oluruz.
While
While for gibi bir döngü çeşitidir. While döngümüz tek parametre almaktadır. Bu parametre aynı zaman da döngümüzün koşul/şart konumundadır. Bu koşul mantığını if kullanımındaki koşul mantığındaki gibi düşünebiliriz. Koşulumuz doğru olduğu süresince döngümüz devamlılığını sürdürür.
For döngüsünden farkı olarak değişken tanımlamamızı döngüye girmeden tanımlayarak başlangıç değerini veriyoruz ve artış miktarı while döngüsünde { } süslü parantezler içerisinde belirtiyoruz. Kullanım durumuna göre bu artış miktarını while döngüsü içerisinde istenilen yere koymak mümkündür. Genel olarak bu artış miktarı while döngüsünde {} süslü parantez içerisinde en son kısımda bulunur. Bir örnek ile bu kalıbımıza bir örnek verelim.
<?PHP echo "3'ün Katları <br><br>"; $i = 3; # Değişkenimizi tanımladık ve başlangıç değerimizi atadık. while($i < 20) # Döngümüzün koşulu belirledik. { echo "> ". $i ."<br>"; $i = $i + 3; # Artış miktarı (3'er 3'er artış) } ?>
Do -While
Do – while döngüsü diğer döngülere göre daha az kullanılmaktadır. Çalışma prensibinden bahsedecek olursak önce yapılacak işlemler gerçekleşir daha sonra döngünün sonunda (while kısmında) belirlenen koşula uygun olduğu sürece döngü devamlılığını sağlar. Eğer belirlenen koşula uygun değil ise döngüden çıkılır. While döngüsündeki gibi başlangıç değişkeni dışarda tanımlanıp artış/azalış miktarı {} süslü parantez içerisinde belirtilir. Do – while döngüsünü örneğimiz inceleyerek devam edelim.
<?PHP echo "Geri sayım başlıyor... <br><br>"; $i = 7; # Değişkenimiz tanımlandı ve başlangıç değerimizi atadık. do { echo "Kalkış için " . $i . "<br>"; $i--; # Azalış miktarımızı belirledik (1'er 1'er) } while ($i < 0) # Döngü koşulumuzu belirledik. ?>
Do – while döngüsünün diğer döngülerden farklı olarak bir çalışma durumu vardır. Do – while döngüsünde yukarıda da belirttiğimiz üzere koşulumuzu sonda kontrol ettiğimizden dolayı başlangıçta koşulumuz uygun olmada döngümüz bir kere çalışmış oluyor. Örneğimiz ile bu durumu yakından inceleyelim.
<?PHP $i = 3; do { echo "Bir kere yazım gerçekleşmektedir.<br>"; } while ($i > 10) # Belirlediğimiz koşula uymamaktadır. ?>
Foreach
Dizilerde kullanılan bir döngüdür. Dizi değişkenlerin anahtar ve değerlerini elde etmek için kullanılır. Kullanımı diğer döngülerden biraz farklıdır. Foreach parametre olarak bir dizi alır ve dizide bulunan eleman sayısı kadar döngü döner. Örnek kullanımına bakalım.
<?PHP echo "Dizi Elemanları: <br>"; $dizi = array(1,2,3,4,5); foreach ($dizi as $sayi) { echo $sayi. " "; } ?>
Parametrede as deyiminden sonra yazdığımız değişkene her döngüde sırayla bir eleman değerini yükler. Diğer bir kullanım türü de şu şekildedir.
<?PHP echo "Ash'in Pokemonları: <br>"; $pokemon = array("Pikachu","Charmander","Bulbasaur","Squirtle","Pidgeotto"); foreach ($pokemon as $anahtar => $isim) { echo "$anahtar. poketopunda : $isim <br>"; } ?>