在PHP中比较数组的键
这是我的第一个数组在PHP中比较数组的键,php,arrays,Php,Arrays,这是我的第一个数组 $array1 = [ 'A' => 'Apple', 'B' => 'Ball', 'C' => 'Cat', 'E' => 'Eagle', 'F' => 'Fan' ]; 第二阵列 $array2 = [ 'A' => 'apple is a fruit', 'B' => 'ball is used to p
$array1 = [
'A' => 'Apple',
'B' => 'Ball',
'C' => 'Cat',
'E' => 'Eagle',
'F' => 'Fan'
];
第二阵列
$array2 = [
'A' => 'apple is a fruit',
'B' => 'ball is used to play',
'C' => 'cat is an animal',
'D' => '',
'E' => 'eagle is a bird',
'F' => ''
];
电流输出:
Array
(
[Apple] => apple is a fruit
[Ball] => ball is used to play
[Cat] => cat is an animal
[Eagle] => eagle is a bird
[Fan] =>
)
预期产出:
Array
(
[Apple] => apple is a fruit
[Ball] => ball is used to play
[Cat] => cat is an animal
[Eagle] => eagle is a bird
)
我试过这样做
$arr4 = [];
if ($arr3 = array_intersect_key($array1, $array2)) {
foreach ($arr3 as $k => $v) {
$arr4[$v] = $array2[$k];
}
}
print_r($arr4);
请帮忙,提前谢谢!
如果你看到电流输出,我得到的结果是风扇没有价值。我需要得到的结果值与预期输出值类似,您可以试试这个
$array3 = [];
foreach ($array1 as $key => $value) {
if ($array2[$key] != '') {
$array3[$value] = $array2[$key];
}
}
echo '<pre>';
print_r($array3);
$array3=[];
foreach($array1作为$key=>$value){
如果($array2[$key]!=''){
$array3[$value]=$array2[$key];
}
}
回声';
打印(数组3);
您可以试试这个
$array3 = [];
foreach ($array1 as $key => $value) {
if ($array2[$key] != '') {
$array3[$value] = $array2[$key];
}
}
echo '<pre>';
print_r($array3);
$array3=[];
foreach($array1作为$key=>$value){
如果($array2[$key]!=''){
$array3[$value]=$array2[$key];
}
}
回声';
打印(数组3);
试试这个:
Array
(
[Apple] => apple is a fruit
[Ball] => ball is used to play
[Cat] => cat is an animal
[Eagle] => eagle is a bird
)
试试这个:
Array
(
[Apple] => apple is a fruit
[Ball] => ball is used to play
[Cat] => cat is an animal
[Eagle] => eagle is a bird
)
您可以使用函数删除空结果:
if ($arr3 = array_intersect_key($array1, $array2)) {
foreach ($arr3 as $k => $v) {
if($array2[$k]){
$arr4[$v] = $array2[$k];
}
}
}
您可以使用函数删除空结果:
if ($arr3 = array_intersect_key($array1, $array2)) {
foreach ($arr3 as $k => $v) {
if($array2[$k]){
$arr4[$v] = $array2[$k];
}
}
}
添加
IF
内部foreach
添加
IF
内部foreach
具有
array\u filter
、array\u intersect\u key
和array\u combine
功能的简短解决方案:
输出:
具有
array\u filter
、array\u intersect\u key
和array\u combine
功能的简短解决方案:
输出:
所有代码都可以使用
array\u remove($arr4)
从数组中删除空值;所有代码都可以使用array\u remove($arr4)
从数组中删除空值;
$array2 = array_filter($array2);
var_dump(array_combine(array_intersect_key($array1,$array2), $array2));
array(4) {
["Apple"]=>
string(16) "apple is a fruit"
["Ball"]=>
string(20) "ball is used to play"
["Cat"]=>
string(16) "cat is an animal"
["Eagle"]=>
string(15) "eagle is a bird"
}