Php Diziler Genel Anlatım

DİZİLER PHP DİZİLER NEDİR ?

PHPDE DİZİ NASIL TANIMLAMA

Diziler birden fazla değeri taşırlar. Bir değişkene birden fazla değer atayarak dizi değişkenlerini oluştururuz. Dizilerde anahtar (key) ve değer (value) olmak üzere iki tane parametre vardır . Anahtar (key) : Her değerin bir anahtarı vardır. Herhangi bir değere ulaşmak için için bu anahtarlara ihtiyacımız vardır . Eğer biz değerimiz için herhangi bir anahatar oluşturmazsak php kendi bir anahtar atar.

Değer (value) : İstediğimiz değişkendir. Dizi oluştururken yukarda da dediğimiz gibi anahtar tanımlamak zorunda değiliz . Php kendi anahtar atar ve bu anahtar "0" ile başlar.

$diller []="php"; $diller []="java"; $diller []="c++";

Değişkenin dizi olduğunu belirtmek için değişkenden sonra köşeli parantez kullanırız. Dizimizden echo $diller [0]; veya echo $diller [2]; diyerek istediğimiz değeri çekebiliriz . (Biz anahtar atamadığımız için php kendisi atadı ve bu nedenle dizi anahtarımız "0" dan başladı. )

 

<-- Dizi tanımlama -->

Dizimize kendimiz anahtar atamak istersek ; veya şeklinde kullanırız . Bir diğer dizi tanımlama şeklide " array " komutu ile yapılır .

$diller =array ("php", "java" , "c++"); şeklindedir.

Bu şekilde dizi oluşturduğumuz da anahtar oluşturmamış oluruz. Anahtar oluşturarak array kullanımı ise şu şekildedir.

$diller= array ( 1=>Php, 2=>Java, 3=>c++ );

 

<-- Php DİZİZLERİ YAZDIRMA (php Foreach kullanımı) -->

Dizileri yazıdırken echo $diller[anahtar_adi]; şeklinde  foreach kullanarak yazdırabiliriz.

Foreach kullanımı :
Burada foreach ten sonra parantez içerisinde dizi değişkenin adı , daha sonra "as" komutu ve ardından döngü içerisinde kullanılacak değişken ismi yazılır. 

<?php 

$diller adlı bir örnek dizi oluşturalım.

$diller= array ("php", "java" , "c++");

Oluşturduğumuz dizimizi şimdi foreach kullanarak yazdıralım.

foreach($diller as $dilleri_yaz) {
echo $dilleri_yaz;
echo "<br>";
}

?>

 

 

<-- Php Dizilerin anahtarlarını yazdırma array_keys komutu -->

Php de dizilerin sadece anahtarlarını yazdırmak için array_keys komutu kullanılır. Aşağıdaki örneğimizi inceleyelim.


<?php
$diller =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );

 

print_r (array_keys($diller));
 ?>

 

<-- Php Dizilerin değerlerini yazdırma array_values komutu -->

Dizilerin sadece anahtarlını yazdırmak için array_keys komutu kullanılır.

 

<?php
$diller =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );

 

print_r (array_values($diller));
 ?>

 

<-- Php Dizinin değişken mi dizi mi olduğunu bulma is_array fonksiyonu -->

Herhangi bir değişkeni dizimi yoksa normal bir değişkenmi olup olmadığını bulmak için is_array komutunu kullanrıız.

 <?php 
 $diller =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );
               
               
               if (is_array($diller)) {
                   echo "diller değişkeni bir dizidir.";
                   }else {
                       echo "diller değişkeni dizi değildir.";
                       }
 
 ?>

 

<-- Php Bir İfadenin Dizide Tanımlı Olup Olmadığını Bulma -->

Herhangi bir ifadenin dizide anahtar (key) oalrak tanımlanıp tanımlanmadığını bulmak için array_key_exists fonkiyonu kullanılır.


 <?php 
 $diller =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );
               
               
               if (array_key_exists( "dil2" , $diller)) {
                   echo "dizide dil2 anahtar olarak tanımlı.";
                   }else {
                       echo "dizide dil2 anahtar olarak tanımlı. değildir.";
                       }
 
 ?>

 

<-- Php Dizilere Değer Ekleme array_push ve array_unshift komutu -->

Dizilere değer eklemek için array_push ve array_unshift komutlarını kullanırız. 

Dizilere alt kısmına yani sonuna yeni bir değer eklemek için , array_push fonksiyonunu kullanırız.Dizinin sonuna istediğimiz değeri ekler.

<?php 

$dillerb=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",) ;

array_push($dillerb ,  "ASP");

print_r ($dillerb);

?>

 

Dizilere üst kısmına yani başına yeni bir değer eklemek için , array_unshift fonksiyonunu kullanırız.Dizinin başına istediğimiz değeri ekler.

<?php 
$dillerc=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",) ;

array_unshift($dillerc ,  "ASP");

print_r ($dillerc);

?>

 

<-- Php Dizilerde Değer Silme unset , array_pop , array_shift komutu -->

Dizilerde değer silerek unset ile istedğimiz anahtara göre , array_shift ile en üstteki değeri silme veya  array_pop ile en alttaki değeri silebiliriz.

Dizilerde istediğimiz anahtara göre değer silmek için , değişken silmekte te kullandığımız unset komutunu kullanırız. İstediğimiz değeri silmek için onun anahtarını kullanırız.

 <?php 
 $diller =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );
               
            echo "Dizinin değer silinmemiş hali  ";
            echo "<br>";
            print_r ($diller);
 echo "<br>";
 unset ($diller["dil2"]);
 echo "<br><br>";
 echo "Dizinin dil2 değerini silinmiş hali  ";
 echo "<br>";
  print_r ($diller);
 ?>

 

 

array_pop komutu ile en alttaki dizi değerini silme 
 

<?php 
$dillerb=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",) ;

array_pop($dillerb );

print_r ($dillerb);

?>


array_shift komutu ile en üstteki dizi değerini silme 

<?php 
$dillerb=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",) ;

array_shift($dillerb );

print_r ($dillerb);

?>

 

 

<-- Php Farklı Dizileri Birleştirme -->

Tanımladığımız iki dizi birleştirmek için array_merge komutunu kullanırız. 

<?php 
$diller1=array ( 
                1=> "php",
                2=> "java",
                3=> "c++") ;
$diller2=array ( 
                1=> "c",
                2=> "asp",
                3=> "sql") ;


$diller=array_merge($diller1 , $diller2);

echo $diller[2]."<br>";
echo $diller[5]."<br>";
?>

 

<-- Php Dizi Değer Cıkarıp Yeni Dizi Oluşturma -->

Dizideki istediğimiz değerleri alıp yeni bir dizi oluşturmak için array_slice fonksiyonu kullanılır. Array_slice fonksiyonu ile diziden parcayı ayırıp yeni bir dizi yaparız.

array_slice fonksiyonunu kullanırken nerden , ne kadar parametrelerini kullanırız . Pozitif rakam kullanırsak ilk değerlerden , negatif rakam kullanırsak son değerler den işlem yapar. array_slice ($dizi_adi , nerden , ne kadar ) şeklinde kullanılır.


<?php 
$dillera=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",
                4=> "c",
                5=> "asp",
                6=> "sql") ;

$yeni_dizi=array_slice($dillera , 3);

print_r ($yeni_dizi);

?>


Yukarıda örnekte görüldüğü gibi array_slice fonksiyonu 3 rakamını parametre aldı ve ilk 3 değeri atlayarak 4. değerden sonraki değerleri dizimizden çıkardı. Burada 3 rakamının yanında ne kadar aldığını belirtmediğimiz için gönderdiğimiz değerden başlayarat dizinin sonuna kadar bütün değerleri aldı . Yani eğer fonksiyonumuzu $yeni_dizi=array_slice($dillera , 3 , 2); bu şekilde yazmış olsaydık 4. değerden başlayıp 2 değer alacaktı . Aşağıdaki örneği inceleyiniz.
 

<?php 
$dillera=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",
                4=> "c",
                5=> "asp",
                6=> "sql") ;

$yeni_dizi=array_slice($dillera , 3 , 2 );

print_r ($yeni_dizi);

?>


Eğer dizimizde değer çıkarmayı üsten değil de alttan başlama istiyorsak fonksiyondaki ilk parametremizi negatif olarak belirleyeceğiz.


<?php 
$dillera=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",
                4=> "c",
                5=> "asp",
                6=> "sql") ;

$yeni_dizi=array_slice($dillera , -6 , 2 );

print_r ($yeni_dizi);

?>

 

<-- Php Dizide Kaç Tane Değer Olduğunu Bulma count fonksiyonu -->

Dizimizde kaç tane değer olduğunu saydırma için count fonksiyonu kullanabiliriz .
 

 <?php 

 $diller =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );
               
               
             $say=count($diller);
   echo "Dizimizde ".$say." Tane değer var";
 ?>

 

<-- Php Dizide Aynı Değerlerden Kaç Tane Olduğunu Bulma -->

Dizimizdeki bir değerin birden fazla yer alıyorsa ve bu değerin dizimizde kaç defa tekrar ettiğini bulmak istiyorsak array_count_values parametresini kullanırız . 

 <?php 
 $dillerd =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++" ,
               "dil4"=>"php",
               "dil5"=>"php" );
               
               
   $say=array_count_values($dillerd);
   print_r ($say);
 ?>

 

<-- Php Dizi Değerlerini Albafetik Sıralama -->

Dizimizdeki değerleri alfabetik olarak sıralamak için asort ve arsort komutları kullanılır. asort komutu dizi değerlerimizi A dan Z ye sıralarken , arsort komutu ise dizi değerlerimizi Z den A ya doğru sıralamaktadır.


 <?php 
 $dillerd =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );
               
               
  asort($dillerd);
   print_r ($dillerd);
 ?>

 

<-- Php Dizideki Anahtarları Albafetik Sıralama -->

Dizimizdeki değerleri alfabetik olarak sıralamak için asort ve arsort komutları kullanılır. asort komutu dizi değerlerimizi A dan Z ye sıralarken , arsort komutu ise dizi değerlerimizi Z den A ya doğru sıralamaktadır.


 <?php 
 $dillerd =array( "dil1"=> "php",
               "dil2"=> "java" ,
               "dil3"=> "c++"  );
               
               
  asort($dillerd);
   print_r ($dillerd);
 ?>

 

<-- Php İki Dizi Arasındaki Farkı Bulma -->

İki dizi arasındaki farkları bulmak için array_diff komutu kullanılır . Bu komutu kullanırken farkını bulmak istediğimiz birinci dizimiz alırız ve ikinci dizimiz ile karşılaştırırız. 

<?php 

$diller1=array ( 
                1=> "php",
                2=> "java",
                3=> "c++") ;
$diller2=array ( 
                1=> "php",
                2=> "asp",
                3=> "sql") ;


$fark=array_diff($diller1 , $diller2);

print_r ($fark);
?>

Birincide dizide olup ikinci dizde olmayan değerleri gösterdi. 

 

<-- Php Diziden Rastgele Değer Seçme -->

Dizilerimizde array_rand fonkisyonu ile rastgele değer seçebiliyoruz . Burada dikkat edilmesi gereken tek nokta array_rand fonksiyonu dizimizden rastgele değer değil , rastegele anahtar çekmektedir.  Aşağıdaki örneği inceleyiniz

<?php 
$dillerr=array ( 
                1=> "php",
                2=> "java",
                3=> "c++",
                4=> "c",
                5=> "asp",
                6=> "sql") ;

$rastgele_anahtar=array_rand($dillerr  ); // Rastgele anahtarı aldı

echo  $dillerr[$rastgele_anahtar]; // bu şekildede aldığımız rastegele anahtarı dizimize yerleştirerek değerimizi çektik

?>

 

<-- Php Dizi Değerini Değişkene Atama List Komutu -->

Dizimizdeki değerleri ayrı ayrı değişkenlere atamak için list komutu kullanılır. Komuttaki her değişken sırasıyla dizideki değeri alıyor. 

<?php 
$dillerw=array ( 
                 "php",
                "java",
                "c++") ;

list ($dil11,$dil12,$dil13)=$dillerw;
echo $dil12;

?>

$dil1 değişkenine "php",

$dil2 değişkenine "java",

$dil3 değişkenine "c++" atamış olduk.

 

Programın Çıktısı

Mesaj ve Yorumlar

Yorum Sayısı (1)

ÜYE YORUMLARI

1
kullanıcı resmi yok
bikaosman
9 yıl önce
çok güzel bir kaynak olmuş, çoğu şey bir arada sağolun
Çevrimiçi :
16
Günlük :
176
Haftalık :
547
Aylık :
1543
Copyright © 2010 İşbara Alp Sönmez – Programlama Örnekleri. Her hakkı saklıdır. www.alpsonmez.com Bu sitedeki herhangi bir içeriğin, "herhangi bir sitede veya forumda" iznim dışında paylaşım yapılması durumunda hukuki dava açacağımı tarafınıza arz ederim. "Öğrenciler dilediği gibi kullanabilir."