وظيفة array_intersect_ukey() في PHP

مثال

مقارنة أسماء مفاتيح الملفين (استخدام دالة تدخلية مخصصة لتحديد أسماء المفاتيح) وإرجاع التكامل:

<?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"=>"blue","b"=>"black","e"=>"blue");
$result=array_intersect_ukey($a1,$a2,"myfunction");
print_r($result);
؟

运行实例

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

يستخدم الملف array_intersect_ukey() للتحقق من أسماء مفاتيح (أو أكثر من ملف) ويقوم بإرجاع التكامل.

ملاحظة:يستخدم هذا الملف دالة تدخلية مخصصة للتحقق من أسماء المفاتيح!

يقارن هذا الملف بين أسماء مفاتيح (أو أكثر من ملف) ويقوم بإرجاع مصفوفة التكامل، تحتوي هذه المصفوفة على جميع الأنواع التي تظهر في الملفات المقارنة (array1)中,同时也在任何其他参数数组(array2array3 等等)中的键名。

شرح

يستخدم الملف array_intersect_ukey() الدالة التدخلية للتحقق من أسماء المفاتيح لتحديد التكاملات من المصفوفات.

ي�回 الملف array_intersect_ukey() مصفوفة تحتوي على جميع الأنواع التي تظهر array1 القيم التي تظهر في نفس الوقت في جميع الأنواع الأخرى من الأنواع المقدمة.

يتم هذا المقارنة من خلال الدالة التدخلية المقدمة من المستخدم. وتحتوي الدالة على اثنين من المعلمات، وهي أسماء المفاتيح التي سيتم مقارنتها. إذا كانت المعلمة الأولى أقل من المعلمة الثانية، فإن الدالة يجب أن تعود قيمة سلبية، وإذا كانت المعلمتان متساويتين، فإنها يجب أن تعود 0، وإذا كانت المعلمة الأولى أكبر من المعلمة الثانية، فإنها يجب أن تعود قيمة إيجابية.

اللغة

array_intersect_ukey(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");
$a2=array("a"=>"black","b"=>"yellow","d"=>"brown");
$a3=array("e"=>"purple","f"=>"white","a"=>"gold");
$result=array_intersect_ukey($a1,$a2,$a3,"myfunction");
print_r($result);
؟

运行实例