PHP vergleicht die Schlüsselnamen und Schlüsselwerte zweier Arrays und gibt die Differenzfunktion array_diff_uassoc() zurück

黄舟
Freigeben: 2023-03-17 07:32:01
Original
1244 Leute haben es durchsucht

Beispiel

Vergleicht die Schlüsselnamen und Schlüsselwerte von zwei Arrays (unter Verwendung einer benutzerdefinierten Benutzerfunktion zum Vergleichen von Schlüsselnamen) und gibt den Differenzsatz zurück:

<?php
function myfunction($a,$b)
{
if ($a===$b)
{
return 0;
}
return ($a>$b)?1:-1;
}

$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("d"=>"red","b"=>"green","e"=>"blue");

$result=array_diff_uassoc($a1,$a2,"myfunction");
print_r($result);
?>
Nach dem Login kopieren
Definition und Verwendung

Die Funktion array_diff_uassoc() wird verwendet, um die Schlüsselnamen und Schlüsselwerte von zwei (oder mehr) Arrays zu vergleichen und die Differenz zurückzugeben.

Hinweis: Diese Funktion verwendet eine benutzerdefinierte Funktion zum Vergleichen von Schlüsselnamen!

Diese Funktion vergleicht die Schlüsselnamen und Schlüsselwerte von zwei (oder mehr) Arrays und gibt ein Differenzarray zurück, das alles im verglichenen Array (Array1) enthält, jedoch nicht in einem anderen Schlüsselname und Schlüsselwert im Parameterarray (Array2 oder Array3 usw.).

Syntax

ParameterBeschreibung
array1Erforderlich . Das erste Array, das mit anderen Arrays verglichen wird.
array2Erforderlich. Das Array, das mit dem ersten Array verglichen werden soll.
array3,...Optional. Zusätzliches Array zum Vergleich mit dem ersten Array.
myfunctionErforderlich. Eine Zeichenfolge
array_diff_uassoc(array1,array2,array3...,myfunction);
Nach dem Login kopieren
, die eine aufrufbare Vergleichsfunktion definiert. Wenn das erste Argument <, =, > und das zweite Argument ist, muss die entsprechende Vergleichsfunktion eine Ganzzahl von <, =, > zurückgeben.
参数描述
array1必需。与其他数组进行比较的第一个数组。
array2必需。与第一个数组进行比较的数组。
array3,...可选。与第一个数组进行比较的其他数组。
myfunction必需。一个定义了可调用比较函数的字符串。如果第一个参数 <, =, > 第二个参数,相应地比较函数必须返回一个 <, =, > 0 的整数。
Technische Details

更多实例

实例 1

比较三个数组的键名和键值(使用用户自定义函数比较键名),并返回差集:

<?php
function myfunction($a,$b)
{
if ($a===$b)
{
return 0;
}
return ($a>$b)?1:-1;
}

$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$a2=array("a"=>"red","b"=>"green","d"=>"blue");
$a3=array("e"=>"yellow","a"=>"red","d"=>"blue");

$result=array_diff_uassoc($a1,$a2,$a3,"myfunction");
print_r($result);
?>
Nach dem Login kopieren

例子 2

如何为该函数分配多个数组:

<?php 
function myfunction($v1,$v2) 
{ 
if ($v1===$v2) 
{ 
return 0; 
} 
if ($v1>$v2) 
{ 
return 1; 
} 
else 
{ 
return -1; 
} 
} 
$a1=array(0=>"Dog",1=>"Cat",2=>"Horse"); 
$a2=array(3=>"Dog",1=>"Cat",5=>"Horse"); 
$a3=array(6=>"Bird",0=>"Dog",5=>"Horse"); 
print_r(array_diff_uassoc($a1,$a2,$a3,"myfunction")); 
?>
Nach dem Login kopieren

输出:

Array ( [2] => Horse )
Nach dem Login kopieren


Das obige ist der detaillierte Inhalt vonPHP vergleicht die Schlüsselnamen und Schlüsselwerte zweier Arrays und gibt die Differenzfunktion array_diff_uassoc() zurück. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!