PHP FOREACH DÖNGÜSÜ

foreach yapısı diziler üzerinde döngü yapmayı kolaylaştırmaktadır. foreach yalnızca diziler ve nesneler için kullanılabilir; farklı veri türünde veya ilişkilendirilme miş bir değişken ile kullanmak istediğinizde hata verir.

Foreach döngüsü, bir dizi değişkenin bütün elemanları için istenilen işlemi yapar. For döngüsündeki gibi kaç defa tekrar edileceğini belirtmeyiz. Döngünün tekrarını dizideki eleman sayısı belirler. İki kullanım tipi mevcuttur. İlk kullanım tipi görelim:


<?php

foreach (dizi_ifadesi as $deger){
    
	// döngü altında çalışacak komutlar;
	
 }
 
?>

İlk sözdizimi dizi_ifadesi ile belirtilen dizinin üzerinde döngü oluşturur. Her döngüde, sırası gelen elemanın değeri $deger değişkenine atanır ve dizi göstericisi bir arttırılır (böylece bir sonraki döngüde dizinin bir sonraki elemanına bakılması sağlanmış olur).

Örnek:


<?php 

$mevsim= array('ilkbahar', 'yaz', 'sonbahar', 'kış');
 
foreach( $mevsim as $m ) {

   echo $m.'<br>';
}
?>

ÇIKTI:

ilkbahar

yaz

sonbahar

kış

İkinci yöntem:



<?php 

foreach (dizi_ifadesi as $key => $value){

    // döngü altında çalışacak komutlar;
	
 }
 
?>

İkinci yöntem de aynı şeyi yapar, ek olarak her yinelemede sırası gelen elemanın anahtarı $key değişkenine atanır.

Örnek:


<?php

$padisah['Adı'] = 'Fatih sultan mehmet';

$padisah['Görevi'] = 'Ülke yönetme';

$padisah['Başarısı'] = 'İstanbul fethi';

foreach($padisah as $isim => $deger) {

   echo $isim . ' : ' . $deger . ' <br>';
   
}

?>

ÇIKTI:

Adı : Fatih sultan mehmet

Görevi : Ülke yönetme

Başarısı : İstanbul fethi

İlk örneği birde for döngüsü ile yapalım


<?php

$mevsim= array('ilkbahar', 'yaz', 'sonbahar', 'kış');

$s = count($mevsim); // dizinin eleman sayısı bulunur

for( $i=0; $i<$s; $i++ ){

    echo $mevsim[$i].'<br>';
}

?>

ÇIKTI:

ilkbahar

yaz

sonbahar

kış

Yukarıda örnek'te görüldüğü üzere foreach döngüsü for döngüsüne göre daha basitdir.

Örnek:Tanımlı olan dizideki sayıların toplamını bulalım.


<?php

$sayilar=array(4,5,8,9,9,2,2,5);

$toplam=0;

foreach($sayilar as $sayi){

   $toplam+=$sayi;
  }
  
  echo "Toplam = $toplam";
?>

ÇIKTI:

Toplam = 44

Örnek: Tanımlı olan öğrencinin dizide olup olmadığını bulalım.


<?php

$ogrenci ="Serdar";

$i=null;

$var=null;

$sinif = array("Ali","Mehmet","Serdar","Sertan", 

               "Hakan","Barış","Cenk","Serdar");

foreach($sinif as $kisi){
   
  if($ogrenci == $kisi){
  
  $var = true;
  
  $i++;
	  
  }else{
  
  continue; // Döngüyü başa aldık
  }
  
  } 
  
if($var == true){

echo "$ogrenci adında öğrenciden $i kişi bulunmakta";

}else{

echo "$ogrenci adında öğrenci bulunmamakta"; 

}  

?>

ÇIKTI:

Serdar adında öğrenciden 2 kişi bulunmakta


ömer 14/04/2020

mysql de değerleri diziye aktaralım .sonra döngü dışında for ile bu dizinin değerlerini kullanamıyoruz bu php denmi kaynaklanıyor.

yönetici 14/04/2020

Ömer. mysql'den çektiğin değerler zaten dizidir, tekrar bir diziye aktarma hata verebilir. mysql'den çektiğin değer $veri değişkene aktardığını farzedelim.

print_r($veri);

Lütfen konu haricinde soru sormayın cevaplanmayacaktır. Yorumunuz onaylandıktan sonra yayınlanacaktır. Lütfen Yukarıda ki mesajları okuyun tekrar aynı soruları sormayın.

122

KATEGORİ
  • HTML
  • CSS
  • PHP
  • JQUERY
  • PHOTOSHOP
  • JavaScript
  • Web Dünyası
  • Linux
  • MİTHRİL FRAMEWORK
  • Laravel
  • Git
  • React
POPÜLER MAKALE
  • HTML LİNK(Bağlantı)EKLEME - LİNK VERME
  • HTML YAZI VE RESİM ORTALAMA
  • HTML RESME LİNK VERME
  • HTML FORM OLUŞTURMA
  • CSS YATAY MENÜ YAPIMI
  • HTML RESİM EKLEME
  • CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
  • HTML DİV ve SPAN NEDİR?
  • HTML ARKAPLANA MÜZİK EKLEME
  • KALİTE KAYBETMEDEN RESİMLERİ BÜYÜTME
ETİKET
WEBCEBİR © 2013 Tüm hakları saklıdır.