如何知道 return 来自 array_intersec 的一对密钥
How to know the pair of key that return from array_intersec
我有这些数组:
$a = ['a','b','c','d','e','f'];
$b = ['d','e','f'];
如果我对上面的数组使用 array_intersect,例如
$c = array_intersect($a, $b);
$d = array_intersect($b,$a);
$c 将 return :
Array
(
[3] => d
[4] => e
[5] => f
)
$d 将 return :
Array
(
[0] => d
[1] => e
[2] => f
)
我怎样才能知道那些 array_intersection 之类的密钥对,
[3] --> [0]
[4] --> [1]
[5] --> [2]
我的意思是,数组 $a
的索引 [3] 与数组 $b
中的索引 [0] 相交。我怎么知道??
非常感谢。
<?php
$a = ['a', 'b', 'c', 'd', 'e', 'f'];
$b = ['d', 'e', 'm', 'f'];
$intersect = array_intersect($a, $b);
$key_intersect = [];
foreach ($intersect as $key => $value) {
$key_intersect[$key] = array_search($value, $b);
}
var_dump($key_intersect);
在 array $b
中,我插入了一个额外的元素来检查它是否可以正常工作,即使还有一些元素。
你想要这样吗:-
<?php
$a = ['a','b','c','d','e','f'];
$b = ['d','e','f'];
$c= array_intersect( $a,$b);
$d= array_intersect( $b,$a);
$intersection_keys_array = array_combine (array_keys($c),array_keys($d)); // combine $c and $d so that $c values become key and $d values become values in resultant array
print_r($intersection_keys_array);
或
更花哨的输出:- https://eval.in/768033
我有这些数组:
$a = ['a','b','c','d','e','f'];
$b = ['d','e','f'];
如果我对上面的数组使用 array_intersect,例如
$c = array_intersect($a, $b);
$d = array_intersect($b,$a);
$c 将 return :
Array
(
[3] => d
[4] => e
[5] => f
)
$d 将 return :
Array
(
[0] => d
[1] => e
[2] => f
)
我怎样才能知道那些 array_intersection 之类的密钥对,
[3] --> [0]
[4] --> [1]
[5] --> [2]
我的意思是,数组 $a
的索引 [3] 与数组 $b
中的索引 [0] 相交。我怎么知道??
非常感谢。
<?php
$a = ['a', 'b', 'c', 'd', 'e', 'f'];
$b = ['d', 'e', 'm', 'f'];
$intersect = array_intersect($a, $b);
$key_intersect = [];
foreach ($intersect as $key => $value) {
$key_intersect[$key] = array_search($value, $b);
}
var_dump($key_intersect);
在 array $b
中,我插入了一个额外的元素来检查它是否可以正常工作,即使还有一些元素。
你想要这样吗:-
<?php
$a = ['a','b','c','d','e','f'];
$b = ['d','e','f'];
$c= array_intersect( $a,$b);
$d= array_intersect( $b,$a);
$intersection_keys_array = array_combine (array_keys($c),array_keys($d)); // combine $c and $d so that $c values become key and $d values become values in resultant array
print_r($intersection_keys_array);
或
更花哨的输出:- https://eval.in/768033