التوصيات التعليمية:

وظيفة array_udiff() في PHP

مثال

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
مقارنة مفتاحي نوعين (استخدام دالة معرفية مخصصة للمقارنة) و تعود مجموعة فرعية:
$a1=array("a"=>"red","b"=>"green","c"=>"blue");
$result=$a2=array("a"=>"blue","b"=>"black","e"=>"blue");;
print_r($result);
؟

运行实例

array_udiff($a1,$a2,"myfunction")

تعريف واستخدام

وظيفة array_udiff() تستخدم لتقارنة مفتاحين (أو أكثر) من الأنواع و تعود مجموعة فرعية.التعليقات:

وظيفة مقارنة بين مفتاحين (أو أكثر) من الأنواع و تعود دالةً فرعية تحتوي على كل أنواع مقارنة.array1)中,但是不在任何其他参数数组(array2array3 等等)中的键值。

شرح

وظيفة array_udiff() تعود دالةً تحتوي على قيم كل قيمة في الأنواع الم مقارنة، ولكن ليست موجودة في أي من الأنواع الأخرى، واسم المفتاح يظل كما هو.

وظيفة array_udiff() مع array_diff() السلوك المختلف، باستخدام الدالة الداخلية لل مقارنة.

مقارنة البيانات تستخدم وظيفة array_udiff() myfunction تم.myfunction وظيفة معرفية تحتوي على اثنين من المعايير التي سيتم مقارنتها. إذا كان المعيار الأول أقل من المعيار الثاني، فإن الوظيفة تعود قيمة سلبية، وإذا كانت المعايير متساوية، فإن الوظيفة تعود قيمة صفر، وإذا كان المعيار الأول أكبر من المعيار الثاني، فإن الوظيفة تعود قيمة إيجابية.

النحو

array_udiff(array1,array2,array3...myfunction)
参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3,... 可选。与第一个数组进行比较的其他数组。
myfunction

必需。字符串值,定义可调用的比较函数。

如果第一个参数小于等于或大于第二个参数,则比较函数必须返回小于等于或大于 0 的整数。

技术细节

返回值: 返回差集数组,该数组包含所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2array3 等等)中的键值。
PHP 版本: 5.1.0+

更多实例

例子 1

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

<?php
function myfunction($a,$b)
{
if ($a===$b)
  {
  return 0;
  }
  return ($a>$b)?1:-1;
}
$a1=array("a"=>"red","b"=>"green","c"=>"blue","yellow");
$a2=array("A"=>"red","b"=>"GREEN","yellow","black");
$a3=array("a"=>"green","b"=>"red","yellow","black");
$result=array_udiff($a1,$a2,$a3,"myfunction");
print_r($result);
؟

运行实例