PHP DİZİLERDE ARAMA in_array() - array_search FONKSİYONU

in_array Fonksiyonu dizide bir değerin varlığını araştırır. Dönen değerler olarak değer varsa True döner, Değer yoksa False döner.

Sözdizimi:

in_array( search,dizi,type )

Search: Gereklidir. Aranan değer belirtilir.

Dizi: Gereklidir. Aranacak dizi belirtilir.

Type: Bu değiştirgede TRUE belirtilmişse in_array() işlevi dizi içindeki elemanın türüne de bakacaktır.

ÖRNEK:

<?php
	
$meyve = array("Elma", "Kiraz", "Nar", "Şeftali");

if (in_array("Kiraz", $meyve)) {

    echo "Kiraz dizinde var";
 }

if (in_array("şeftali", $meyve)) {

    echo "şeftali dizinde var";
 }
?>

in_array() işlevi harf büyüklüğüne duyarlı olduğundan ikinci koşul başarısız olur ve sonuç şu şekilde ekrana yansır.

ÇIKTI:

Kiraz dizinde var

Örnek 2 - Türe de bakan in_array() örneği:

<?php

$a = array('1.10', 12.4, 1.13);

if (in_array('12.4', $a, true)) {

    echo "'12.4' uygun türde bulundu 
"; } if (in_array(1.13, $a, true)) { echo "1.13 uygun türde bulundu"; } ?>

ÇIKTI:

1.13 uygun türde bulundu

Yukarıda örnekte görüldüğü üzere isteğe bağlı seçenek True verildiği için türe göre arama yapacağız. Dizide (12.4) Float türünde tanımlanmış, arama fonksiyonunda "12.4" Sitring olarak arandığı için ekrana bulundu mesajı yazmadı.

array_search Fonksiyonu


array_search : Bir dizide belirtilen değeri arar ve bulursa ilgili anahtarı döndürür. Aranan eleman harf büyüklüğüne duyarlıdır.

Sözdizimi:

array_search( value,dizi,type )

Value: Gereklidir. Aranacak değer.

Dizi: Gereklidir. Aranacak dizi belirtilir.

Type: Bu değiştirgede TRUE belirtilmişse in_array() işlevi dizi içindeki elemanın türüne de bakacaktır.

DÖNEN DEĞERLER

Bulursa Elemanı, bulamazsa FALSE döndürür.

Eğer değer, Dizi içinde birden fazla varsa ilk bulunan döndürülür. Eşleşen tüm değerlerin anahtarlarını döndürmek isterseniz bu işlevi kullanmak yerine, array_keys() işlevini seçimlik arama_değeri değiştirgesi ile kullanın.

<?php

$array = array(0 => 'mavi', 1 => 'beyaz', 
               
			   2 => 'yeşil', 3 => 'siyah');
			   
 $a = array_search('yeşil', $array);
 
 $b = array_search('mavi', $array);
 
echo "yeşil rengin anahtarı...:".$a."
"; echo "mavi rengin anahtarı...:".$b; ?>

ÇIKTI:

yeşil rengin anahtarı...:2

mavi rengin anahtarı...:0

Örnek 2 - Türe de bakan array_search() örneği:

<?php

$a=array("a"=>"5","b"=>5,"c"=>"5");

echo "Anahtar adı...:".array_search(5,$a,true);

?>

ÇIKTI:

Anahtar adı...:b

Yukarıda örnekte görüldüğü üzere isteğe bağlı seçenek True verildiği için türe göre arama yapacağız. Aranan sayı (5) İnteger türünde olduğu için anahtar değeri b yazdı diğer "5" sayıları tırnak içinde yazıldığı için String türünde olduğu için bunları ekrana yazmadı.

hasan 11/04/2018

$meyve = array("Elma", "Kiraz", "Nar", "Şeftali"); if (in_array("Kiraz", $meyve)) { echo "Kiraz dizinde var"; } evet bu şekide çalışıyor ama "Elma", "Kiraz", "Nar", "Şeftali" veritabanından cekiyorum çalışmıyor. $elemanlar=$sor["elemanlar"]; $meyve = array($elemanlar); if (in_array("Kiraz", $meyve)) { echo "Kiraz dizinde var"; } bu şekilde olınca hata mesajı Notice: Array to string conversion in ... diyor.

yönetici 11/04/2018

Hasan, veritabanından çektiğin veri değişkenini print_r komutla içeriğine bak.
echo "
";
print_r ($meyve);
echo "
";

ibrahim 08/05/2018

peki dizide sayılar var diyelim gelen değer ara değer ona en yakın olanı nasıl bulabiliriz?

yönetici 09/05/2018

İbrahim, php dizide en yakın değer :
$dizi=array(2,20,30,40,50,60,70,80);
$ara=56;
function yakin( $a, array $dizi ) {
  $fark = array();
    foreach( $dizi as $d) {
        $fark[$d] = abs($d-$a);      
    }
   return array_search(min($fark), $fark);  }
echo yakin($ara, $dizi);
Lütfen konu haricinde soru sormayın cevaplanmayacaktır. Yorumunuz onaylandıktan sonra yayınlacaktır.

35

KATEGORİ
  • HTML
  • CSS
  • PHP
  • JQUERY
  • PHOTOSHOP
  • JavaScript
  • Web Dünyası
  • Linux
POPÜLER MAKALE
  • HTML RESME LİNK VERME
  • HTML LİNK(Bağlantı)EKLEME - LİNK VERME
  • HTML YAZI VE RESİM ORTALAMA
  • HTML DİV ve SPAN NEDİR?
  • HTML FORM OLUŞTURMA
  • HTML KAYAN RESİM VE Marguee KULLANIMI
  • HTML ARKAPLANA MÜZİK EKLEME
  • CSS (BOYUT) GENİŞLİK VE YÜKSEKLİK (Width-Height)
  • HTML RESİM EKLEME
  • PHP ceil()-floor()-round() YUVARLAMA FONKSİYONU
ETİKET
WEBCEBİR © 2013 Tüm hakları saklıdır.