PHP array_udiff_uassoc() fonksiyonu
Örnek
İki dizinin anahtar adlarını ve anahtar değerlerini karşılaştırarak fark dizesi döner:
<?php function myfunction_key($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } function myfunction_value($a,$b) { if ($a===$b) { return 0; } return ($a>$b)?1:-1; } $a1=array("a"=>"kırmızı","b"=>"yeşil","c"=>"mavi"); $a2=array("a"=>"kırmızı","b"=>"yeşil","c"=>"yeşil"); $result=array_udiff_uassoc($a1,$a2,"myfunction_key","myfunction_value"); print_r($result); ?>
Tanım ve Kullanım
array_udiff_uassoc() fonksiyonu iki (veya daha fazla) dizinin anahtar adlarını ve anahtar değerlerini karşılaştırır ve fark dizesi döner.
Yorum:Bu fonksiyon iki kullanıcı tanımlı fonksiyon kullanır; birincisi anahtar adlarını, ikincisi anahtar değerlerini karşılaştırır!
Bu fonksiyon iki (veya daha fazla) dizinin anahtar adlarını ve anahtar değerlerini karşılaştırır ve bu dizilerdeki tüm elemanları içeren bir fark dizisi döner.array1içerisinde, ancak diğer parametre dizilerinde değil.array2 veya array3 ve benzerleri arasındaki anahtar isimleri ve değerleri.
Açıklama
array_udiff_uassoc() fonksiyonu döner array1 Dizide var ancak diğer dizilerde olmayan kısmı. Dönen dizide anahtar adları değişmez.
Dikkat edin array_diff() ve array_udiff() Farkı, anahtar adının da karşılaştırma için kullanılmasıdır. Anahtar adı ve anahtar değerlerinin karşılaştırmasını yapılır, örneğin "a"=>1 ve "b"=>1 bu iki element eşit değildir.
Anahtar adı (dizgi) kontrolü de geri çağrı fonksiyonu tarafından yapılır. myfunction_key Yapılan. Bu, array_udiff_assoc() Davranışı farklı, ikincisi indeksleri karşılaştırır.
Dizge verilerinin karşılaştırılması kullanıcı tarafından sağlanan geri çağrı fonksiyonları myfunction_value Yapılan. Bu açıdan ve array_diff_assoc() Davranışı tamamen aksi, ikincisi içsel fonksiyonlarla karşılaştırır.
Bu iki fonksiyon da iki karşılaştırılacak parametreye sahiptir. İlk parametre ikinci parametreye eşitse, fonksiyon negatif bir değer döndürür, eşitse 0 döndürür ve ilk parametre büyükse pozitif bir değer döndürür.
Sözdizimi
array_udiff_uassoc(array1,array2,array3...,myfunction_key,myfunction_value)
Parametreler | Açıklama |
---|---|
array1 | Gerekli. Diğer dizilerle karşılaştırılacak ilk dizi. |
array2 | Gerekli. İlk dizi ile karşılaştırılacak dizi. |
array3,... | Opsiyonel. İlk dizi ile karşılaştırılacak diğer diziler. |
myfunction_key |
Gerekli. Dizge anahtarlarını karşılaştırmak için kullanıcı tarafından tanımlanan özelleştirilmiş fonksiyonun adı. Dizgi değeri, çağrılabilir karşılaştırma fonksiyonunu tanımlar. İlk parametre ikinci parametreye eşit veya büyükse, karşılaştırma fonksiyonu küçük eşit veya büyük 0'dan büyük bir tamsayı dönmelidir. |
myfunction_value |
Gerekli. Dizge anahtar değerlerini karşılaştırmak için kullanıcı tarafından tanımlanan özelleştirilmiş fonksiyonun adı. Dizgi değeri, çağrılabilir karşılaştırma fonksiyonunu tanımlar. İlk parametre ikinci parametreye eşit veya büyükse, karşılaştırma fonksiyonu küçük eşit veya büyük 0'dan büyük bir tamsayı dönmelidir. |
Teknik Ayrıntılar
Dönüş Değeri: | Farklılık dizisini döndürür, bu dizide karşılaştırılan tüm dizilerdeki tüm farklılıklar bulunur.array1içerisinde, ancak diğer parametre dizilerinde değil.array2 veya array3 ve benzerleri arasındaki anahtar isimleri ve değerleri. |
PHP Sürümü: | 5+ |