DERS9 - PHP Ders Notları ve Ders Anlatımı - PHP'de Döngü Kullanımı

Etiketler: 

Bu dersimizde php programlama dilinde döngü cümleciklerini kullanarak program yazmayı öğreneceğiz.

Döngü: yazdığımız bir kodun belirli bir koşul sağlandıkça tekrarlanmasını sağlayan yapıdır.

Örneğin, web sayfamızın "üyeol.php" sayfasında üyenin doğum tarihi bilgisini combobox'tan (açılır liste menüsü) seçmesini isteyecek olalım.

Combobox'ta 1950'den 2010'a kadar tarihlerin bulunmasını isteyelim.

Döngü kullanmadan Açılır Liste (combobox ) ile Doğum Yılı Bilgisi

HTML  kodu:

<html>
<head>
<title>PHP DERSLERI - WWW_PROGRAMCIYIM_COM</title>
</head>
<body>
  <select name="select" id="select">
    <option>1950</option>
    <option>1951</option>
    <option>1952</option>
    <option>1953</option>
    <option>1954</option>
    <option>1955</option>
    <option>1956</option>
    <option>1957</option>
    <option>1958</option>
    <option>...</option>
    <option>1999</option>
    <option>2000</option>
    <option>2001</option>
    <option>2002</option>
    <option>2003</option>
    <option>2004</option>
    <option>2005</option>
    <option>2006</option>
    <option>2007</option>
    <option>2008</option>
    <option>2009</option>
    <option>2010</option>
  </select>
</body>
</html>
 

 Bu HTML kodunu "calisma" dizinimize kaydedip tarayıcımızda çıktısına baktığımızda aşağıdaki görüntüyü elde ederiz. (Dikkat ettiyseniz döngü olmadan yazmak çok uzun olduğu için aradaki değerleri "..." ile yazılmış saydım.)

   Varsayılan olarak ilk liste elemanını görüyoruz.

Bu combobax'a tıkladığımızda içindeki değerleri görürüz.

Elde ettiğimiz çıktı,  döngüsüz bir şekilde, liste elemanlarının tamamını tek tek yazarak elde edilmiştir.

Şimdi bu kodu php'ye çevirelim ve döngü kullanalım.

  1. Yukarıdaki örneğimizi metin editörümüzde açalım.
  2. "Ctrl+F" tuş kombinasyonuna basarak arama kutusunu açalım. Arama kutusundan "Yer Değiştirme" sekmesine geçelim.  Aranacak kelime kısmına bir tane çift tırnak işareti (") yazalım. Ne ile değiştirilecek kısmına da ters slaş ve çift tırnak işaretlerini yazalım. (\") Ardından tümünü değiştire tıklayalım ve çıkalım.
  3. Tüm kodu kopyalayalım.
  4. Yeni boş bir sayfa açıp içerisine
  5. <?php echo ""; ?> yazalım.
  6. Ardından mouse ile "" işeretlerinin arasına tıklayıp bu araya yapıştıralım.
  7. Sayfayı kaydedip çıktısına bakalım. PHP' çevrilmiş kod aşağıdadır.

KOD (php):

<?php
echo"<html>
<head>
<title>PHP DERSLERI - WWW_PROGRAMCIYIM_COM</title>
</head>
<body>
  <select name=\"select\" id=\"select\">
    <option>1950</option>
    <option>1951</option>
    <option>1952</option>
    <option>1953</option>
    <option>1954</option>
    <option>1955</option>
    <option>1956</option>
    <option>1957</option>
    <option>1958</option>
    <option>...</option>
    <option>1999</option>
    <option>2000</option>
    <option>2001</option>
    <option>2002</option>
    <option>2003</option>
    <option>2004</option>
    <option>2005</option>
    <option>2006</option>
    <option>2007</option>
    <option>2008</option>
    <option>2009</option>
    <option>2010</option>
  </select>
</body>
</html>
";
?>

Çıktı:

Dikkat ederseniz HTML ile PHP kodları tamamen aynı çıktıyı vermektedir.

Şu anda kodumuz php dilinde ve döngüsüz. Şimdi de kodumuzu döngüye çevirelim.

KOD:(php döngülü)

<?php
echo"<html>
<head>
<title>PHP DERSLERI - WWW_PROGRAMCIYIM_COM</title>
</head>
<body>
  <select name=\"select\" id=\"select\">";
  for($i=1950;$i<=2010;$i++)
    echo    "<option>$i</option>";
    
  echo"</select>
</body>
</html>
";
?>

Çıktı:

Çıktıdan da gördüğümüz gibi döngü kullanarak çok uzun bir listeyi çok kısa bir şekilde görüntüleyebildik. Ayrıca çok uzun olduğu için yazamadığım ara değerler için üç noktayı "..." bu çıktıda görmüyoruz. Çünkü yıl aralığı ne olursa olsun tüm değerleri döngümüz bizim yerimeze yazmaktadır. Böylece bizi büyük bir zahmetten kurtarmaktadır.

Şimdi de kodumuzun son haline göz atalım ve döngü satırını açıklayalım.

 Döngüsüz php kodunda 8 ile 29. satırlarda tek tek el ile yazdığımız satırlar yerine, döngülü kodda üç-dört satırlık bir döngü yazıldığına dikkat ediniz.

Programlama dillerinde bazı temel döngü cümlecikleri vardır. Bunlar for döngüsü, while döngüsü, do-while döngüsü...ve benzerleridir.

Bizim örneğimizde for döngüsünü kullandık.

for döngüsü içerisine 3 parametreyi aralarında noktalı virgüllü olarak alır. ilk parametre başlangıç değerini, ikinci parametre döngünün bitmesi için gereken şartı, son parametrede başlangıç değeri olarak verilen değişkenin artış miktarı bilgisidir.

  for($i=1950;$i<=2010;$i++)  

satırında $i=1950 başlangıç değerli değişken, $i<=2010 döngünün sonlanma
şartı, $i++ da artışın birer birer olacağını belirtir.

echo    "<option>$i</option>";

satırı da döngünün tekrar edeceği kod parçasıdır. Tek bir satır olduğu için süslü
parantezler arasına yazılmak zorunda değildir. Eğer tekrar etmesini istediğimiz kodlar birden fazla ise süslü parantezler ({}) arasında yazarız.

<option>...</option> etiketi combobox'ın içene eleman ekleyen alt etikettir. Biz her döngüde bu etiketler arasına döngü değişken değerimiz olan "$i" değişkenimizi yazdırdır. Böylece döngü her çalıştığında combobox'a bir eleman eklemektedir. Döngü sonlandığında ise istediğimiz aralıktaki tüm değerleri eklemiştir.

DERS10 - PHP'de Fonksiyon Kullanımı