Professional Documents
Culture Documents
PHP - 2 - Koşullu - Döngüsü 1
PHP - 2 - Koşullu - Döngüsü 1
- Çoğu zaman kod yazarken, farklı koşullar için farklı eylemler gerçekleştirmek isteriz.
if (koşul) {
koşul doğru ise çalışacak kodlar;
}
$t = 14;
if ($t < 20) {
echo "İyi günler!";
}
if…else ifadesi:
if (koşul) {
koşul sağlanır ise (true) çalışacak kodlar;
} else {
koşul sağlanmaz ise (false) çalışacak kodlar;
}
$t = 14;
if ($t < 20) {
echo "İyi günler!";
} else {
echo "İyi akşamlar!";
}
if…elseif…else ifadesi:
if (koşul_1) {
koşul true ise çalışacak kodlar;
} elseif (koşul_2) {
ilk koşul false ise ve bu koşul true ise çalışacak kodlar.
.
.
.
} else {
tüm koşullar false ise çalışacak kodlar.
}
$t = 8;
} else {
echo "İyi Akşamlar!";
}
switch ifadesi:Yürütülecek bir çok kod bloğundan birini seçmek için switch kullanırız.
switch (n) {
case label1:
code to be executed if n=label1;
break;
case label2:
code to be executed if n=label2;
break;
case label3:
code to be executed if n=label3;
break;
...
default:
code to be executed if n is different from all labels;
}
Bu komut şu şekilde çalışır:
- İlk olarak, tek ifade n (genellikle bir değişkendir) bir kez değerlendirilir.
Daha sonra bu ifadenin değeri Switch yapısının her bir Case'sinin değerleriyle
karşılaştırılır. Eşleşen bir değer varsa, onunla ilişkili kod parçası (case ) yürütülür.
- Break komutu, kodun otomatik yürütme için bir sonraki duruma girmesini önlemek
için kullanılabilir.
switch ($favcolor) {
case "red":
echo "Your favorite color is red!";
break;
case "blue":
echo "Your favorite color is blue!";
break;
case "green":
echo "Your favorite color is green!";
break;
default:
echo "Your favorite color is neither red, blue, nor green!";
}
?>
- İf else if yapısı ile haftanın günleri örneği:
<?php
$gun = 6;
if($gun == 1)
echo " Pazartesi Günündeyiz";
else if($gun == 2)
echo " Salı Günündeyiz";
else if($gun == 3)
echo " Çarşamba Günündeyiz";
else if($gun == 4)
echo " Perşembe Günündeyiz";
else if($gun == 5)
echo " Cuma Günündeyiz";
else if($gun == 6)
echo " Cumartesi Günündeyiz";
else if($gun == 7)
echo " Pazar Günündeyiz";
else echo "Malesef Böyle Bir Gün Yok :";
?>
switch case yapısı ile haftanın günleri örneği: <?php
$gun = 6;
switch($gun) {
case 1: echo " Pazartesi Günündeyiz";
break;
case 2: echo " Salı Günündeyiz";
break;
case 3: echo " Çarşamba Günündeyiz";
break;
case 4: echo " Perşembe Günündeyiz";
break;
case 5: echo " Cuma Günündeyiz";
break;
case 6: echo " Cumartesi Günündeyiz";
break;
case 7: echo " Pazar Günündeyiz";
break;
default: echo "Malesef Böyle Bir Gün Yok :(";
break;
}
if…else ve switch alternatif kullanımları
if…else ve switch için aşağıdaki alternatif kullanımları da vardır
$a =5; $a =5;
if($a == 5) switch($a){
case 5:
echo "\$a'nın değeri: 5"; echo "\$a'nın değeri 5";
break;
elseif($a == 4)
case 4:
echo "\$a'nın değeri: 4"; echo "\$a'nın değeri 4";
break;
else default:
echo "\$a'nın değeri: " . $a;
echo "\$a'nın değeri: " . $a; endif;
}
PHP Döngüler (Loops)
Php'deki döngüler şunlardır:
- for : bir döngünün önceden belirlenen sayıda tekrarlanması.
- while : bir koşul karşılanana kadar döngünün yürütülmesini tekrarlamak.
- do….while : bir kod parçasını bir kez yürütün, ardından belirli bir koşul karşılanana kadar
döngüyü tekrarlayın.
- foreach : bir dizinin her elemanı için bir kod parçasını tekrarlamak.
For Döngüsü Yapısı:
For döngüsünde ise for yazdıktan sonra parantezler içine
döngü değişkenimizin başlangıç değeri, döngü koşulumuz ve
döngü değişkeni işlemi(artır azalt,çarp böl) yapıyoruz.
Küçük bir örnek verecek olursak:
For döngüsünün yapısı aşağıdaki gibidir.
<?php
for($baslangicDegeri ; $kosul ; $donguDegisken iIslemi)
{
// çalışacak kodlar
}
?>
for ( initialization; condition; increment )
{
// body
}
Örneğin: arasındaki sayıların toplamını ekrana yazdıran bir örnek yapalım.
<?php
$toplam = 0;
for( $i=1 ; $i<=5 ; $i++) {
$toplam +=$i;
}
echo “Örneğin arasındaki sayıalrın toplamı : $toplam";
?>
while Döngüsü :
While döngüsü belirli bir koşul doğrulanıncaya kadar kod parçasını
tekrarlar. While döngüsü şu şekilde yazılır:
while (kosul)
{
islemler; while (koşul true ise)
{
islemler; kod çalıştırılır;
. }
.
.
artırma/azaltma;
}
- While döngüsünde döngü değişkenimize döngüden önce bir değer veriyorduk ve döngü
içinde artırma azaltma gibi işlemleri yapıyorduk.
<?php
$baslangic = 0;
while ($baslangic < 10 ){
echo $baslangic++.'--’;
}
?>
while(true){
echo 'test-’; //bu sonsuz bir döngüdür.
}
do…while:
do…while döngüsü her zaman bir kod parçasını bir kez çalıştırır, ardından koşulu kontrol
eder ve belirtilen koşul karşılanırsa döngünün yürütülmesini tekrarlar. do...while
döngüsünün sözdizimi aşağıdaki gibidir:
do{
// çalıştırılacak kodlar
}while(koşul);
Soru : Do while döngüsü kullanarak ekrana 10 defa ‘evrensel kod’ yazdıran programın Php
kodunu yazınız.
Cevap :
<?php
$i = 0;
do{
print("evrensel kod <br>");
$i++;
}while($i<10);
?>
Sonsuz Döngülerin Kullanım Şekli:
- Sonsuz döngü oluşturmanın en basit şekli while döngüsünde koşul yerine 1(true )
yazarak,
- for döngüsünde ise koşul ve değişken yerleri boş bırakılarak yani sadece iki tane noktalı
virgül(;;) kullanılarak yapılır. örneğin:
For ( ; ; ) {
while(1) {
// sonsuz döngüdeyiz. // sonsuz döngüdeyiz
}
}
break ve continue deyimleri:
break deyimi: girilen kod bloğunun bir dışına çıkmamızı sağlar. en basit anlama yöntemi
hangi döngüye ait süslü parantezin içine break yazarsak o süslü parantezin bir dışına çıkar.
- if lere ait süslü parantezlerle döngüye ait süslü parantezi karıştırmamaya dikkat etmemiz
gerekir.
- continue deyimi: Döngü içinde continue yazdığımız kısımdan sonraki kodlar çalıştırılmaz ve
döngü başa dönerek bir sonraki adıma geçer.
While ile: while(1) {
$n = rand(1,1000);
if($n % 5 == 0) {
echo "$n değişkeni 5 e bölünüyor döngü burda biter. <br/>";
break;
} else {
echo "$n değişkeni 5 e bölünmediği için döngü devam ediyor.<br/>";
}
}
…..
For ile :
for(;;) {
$n = rand(1,1000);
if($n % 5 == 0) {
echo "$n değişkeni 5 e bölünüyor döngü burda biter. <br/>";
break;
}else {
echo "$n değişkeni 5 e bölünmediği için döngü devam ediyor.<br/>";
}
}
Örneğin: 1 ile 10 arasındaki çift sayıları hesaplayan ve ekrana yazdıran bir program yazın
<?php
$all = array( "Elena" => 18.21,
"Ehsan" => 15.73,
"Mina" => 16.37,
"Sina" => 17.66, );
echo '<ul>’;
foreach ( $all as $name => $avg ) {
echo '<li>' . $name . ' (' . $avg . ')</li>’;
}
echo '</ul>’;