Diziler bazen çok uzun olabilir. Veya istenilen bir şey dizi içinde aranabilir. Bunun için dizi içi arama ve karşılaştırma fonksiyonlarını kullanacağız

array_key_exists();
Bir anahtar veya sira numarası dizide var mı diye kontrol eder.

[php]
<?php
$dizi = array (‘ad’=>’ahmet’, ‘soyad’=>’yilmaz’, ‘no’=>’1453’ );
if(array_key_exists(‘soyad’, $dizi)){
echo "Evet Var";
}
?>
[/php]

in_array()

bir dizide bir değerin varlığını araştırır, çok sık kullanılan bir fonksiyondur.

[php]
<?php
$dizi = array (‘ad’=>’ahmet’, ‘soyad’=>’yilmaz’, ‘no’=>’1453’ );
if(in_array(‘ahmet’, $dizi)){
echo "Evet var";
}
?>
[/php]

array_search()
bir dizide belirtileni değeri arar ve bulursa ilgili anahtarı döndürür.

[php]
<?php
$dizi = array (‘ad’=>’ahmet’, ‘soyad’=>’yilmaz’, ‘no’=>’1453’ );
if($anahtar=array_search(‘ahmet’,$dizi)){
echo ‘Anahtarı: ‘.$anahtar;
}
?>
[/php]

Anahtarı: ad

Bir ilişkili dizinin içinde eğer sayılar varsa array_sum($b) fonksiyonu ile toplama işlemi yapabiliriz

[php]
<?php
$b = array("a"=>1.2, "b"=>2.5, "c"=>3.4);
echo array_sum($b);
?>
[/php]
7.1

array_intersect()
Dizilerin aynı isimli ortak elemanlarını bulur

array_intersect($dizi, $dizi2,….)
[php]
<?php
$dizi1 = array("ahmet", "yılmaz", "osman", "mehmet");
$dizi2 = array("ayşe","fatma","yılmaz","feride");
$ortak= array_intersect($dizi1, $dizi2);
print_r($ortak);
?>
[/php]

çıktı olarak

Array
(
[1] => yılmaz
[4] => çelik
)

php