Belirli sayıda kod bloklarının çalıştırılmasını sağlar. En karmaşık döngü yapısıdır.
Basit söz dizimi:
1 2 3 4 5 6 7 | for (sayaç başlangıç; sayaç kontrol; sayac değişim) { /* sayaç kontrol kısmı true değerini döndürdüğü sürece kodlar yürütülür */ } |
Söz dizimi yapıldığına göre basit örnekler yapmaya başlayabiliriz.
PHP for Örnekleri
Örnek 1: 1-10 arasındaki sayıları 1-2-3-…10- şeklinde ekrana yazdıralım.
1 2 3 4 5 6 7 8 9 | <?php for($i=1;$i<=10;$i++){ echo $i."-"; } ?> |
Çıktı:
1 2 3 | 1-2-3-4-5-6-7-8-9-10- |
Örnek 2: 1-10 arasındaki sayıları alt alta yazdıralım.(Yukarıdaki örnekte bulunan tire yerine br kullanarak yapabilirsiniz.)
1 2 3 4 5 6 7 8 9 | <?php for($i=1;$i<=10;$i++){ echo $i."<br>"; } ?> |
Çıktı:
1 2 3 4 5 6 7 8 9 10 11 12 | 1 2 3 4 5 6 7 8 9 10 |
Örnek 3: Ekrana 1-50 arasındaki sayıları barındıran kutular oluşturun( Aşağıdaki div.kutu classını kullanabilirsiniz).
1 2 3 4 5 6 7 8 9 10 11 12 13 | <style> div.kutu{ width:100px; height:100px; text-align:center; line-height:100px; float:left; border:solid 3px black; margin:2px; } </style> |
PHP kodu:
1 2 3 4 5 6 7 8 9 | <?php for($i=1;$i<=50;$i++){ echo "<div class='kutu'>$i</div>"; } ?> |
Çıktı:
Örnek 4: Formdan alınan başlangıç ve bitiş değerlerine göre ekrana aralıktaki sayıları yazdıran programı yapınız(NOT: Tüm kodlar aynı sayfada olabilir).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | <!DOCTYPE html> <html lang="tr"> <head> <meta charset="UTF-8"> </head> <body> <form action="" method="post"> Başlangıç: <input type="text" name="s1"><br> Bitiş: <input type="text" name="s2"><br> <input type="submit" value="Yazdır"> </form> <?php if(isset($_POST["s1"]))//s1 gönderildiyse s2 de gönderilmiştir. $s1=$_POST["s1"]; $s2=$_POST["s2"]; for($i=$s1;$i <= $s2;$i++){ echo $i."-"; } ?> </body> </html> |
Çıktı: birinci kutuya 10, ikinci kutuya 20 girdiğimizdeki sonuç
1 2 3 | 10-11-12-13-14-15-16-17-18-19-20- |
Örnek 5: 1-25 arasındaki sayıları select option içine yerleştirin.
1 2 3 4 5 6 7 8 9 10 11 | <select name="liste"> <?php for($i=1;$i<=25;$i++){ echo "<option value='$i'>$i</option>"; //çift tırnak içinde tek tırnak kullanılabilir. //yada kaçış karakteri kullanılmalı } ?> </select> |
Örnek 6: Kullanıcının girdiği yükseklik ve genişlik değerine göre ekranda bulunan kırmızı bir divin yükseklik ve genişlik değerini değiştiren uygulamayı yapınız.
Örnek 7: Kullanıcının girdiği aralıktaki sayıları yazdıran programı aşağıdaki şartlara uygun olarak gerçekleştirin.
- İlk girilen sayı başlangıç olsun.
- İkinci girilen sayı bitiş olsun.
- Bu iki aralıktaki sayıları ekrana yazdırın.
- Üçüncü girilen sayı her hangi bir değer olabilir.
- Ancak sayı döngü aralığında ise o sayıyı ekrana kalın ve kırmızı şekilde yazdırın.
Örnek Çıktı:Sırayla 2, 7, 5 girilmiş olsun.
2
3
4
5
6
7
PHP Kodu:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 | <html lang="tr"> <head> <meta charset="utf-8"> <title>PHP</title> </head> <body> <form action="<?=$_SERVER['PHP_SELF']?>" method="get"> <input type="number" name="sayi1" placeholder="Birinci Sayıyı Girin"><br> <input type="number" name="sayi2" placeholder="İkinci Sayıyı Girin"><br> <input type="number" name="sayi3" placeholder="Üçüncü Sayıyı Girin"><br> <input type="submit" name="buton" value="Yazdır"> </form> <?php if( isset($_GET["buton"]) ){ $s1 = (int) $_GET["sayi1"]; $s2 = (int) $_GET["sayi2"]; $s3 = (int) $_GET["sayi3"]; if(empty($s1) == false && empty($s2) == false && empty($s3) == false){ if($s1 < $s2){ for($s1= (int) $_GET["sayi1"];$s1 <= $s2;$s1++){ if($s1 == $s3){ echo "<strong style='color:red;'>$s1</strong><br>"; } else{ echo "$s1 <br>"; } } } else if($s1 > $s2){ for($s2= (int) $_GET["sayi2"];$s2 <= $s1;$s2++){ if($s2 == $s3){ echo "<strong style='color:red;'>$s2</strong><br>"; } else{ echo "$s2 <br>"; } } } else if($s1 == $s2){ if($s1 == $s3){ echo "<strong style='color:red;'>$s1</strong><br>"; } else{ echo "$s1 <br>"; } } } else{ echo "Tüm alanları doldurunuz."; } } ?> </body> </html> |
Örnek 8: PHP ile for kullanarak 5 satır 10 sütunluk bir tablo oluşturun.
2 Yorum