PHP:比较数组并将第一个数组值复制到第二个数组值,其中第二个数组值为null
如何做到以下几点PHP:比较数组并将第一个数组值复制到第二个数组值,其中第二个数组值为null,php,arrays,null,copy,Php,Arrays,Null,Copy,如何做到以下几点 $array1 = array( id => '11', c1 => 'abcd', c2 => '4500', c3 => 'texas' ,c4=>'name' ); $array2 = array( id => '12', c1 => '', c2 => '4500', c3 => 'arizona', c4=>'' ); 我想比较数组1和数组2,当数组2的值为null时,将值从数组1复制到数组2。上面数
$array1 = array( id => '11', c1 => 'abcd', c2 => '4500', c3 => 'texas' ,c4=>'name' );
$array2 = array( id => '12', c1 => '', c2 => '4500', c3 => 'arizona', c4=>'' );
我想比较数组1和数组2,当数组2的值为null
时,将值从数组1复制到数组2。上面数组中的示例我只想将c1和c4键从数组1复制到数组2
感谢您的帮助循环怎么样:
并最小化,但可读性稍差:
foreach($array1 as $key=>$value){
$array2[$key] = $array2[$key] ? $array2[$key] : $value;
}
循环怎么样:
并最小化,但可读性稍差:
foreach($array1 as $key=>$value){
$array2[$key] = $array2[$key] ? $array2[$key] : $value;
}
试试这个:
foreach($array2 as $key=>$value)
if ($value==null) $array2[$key]=$array1[$key];
试试这个:
foreach($array2 as $key=>$value)
if ($value==null) $array2[$key]=$array1[$key];
试试这个
<?php
$array1 = array( id => '11', c1 => 'abcd', c2 => '4500', c3 => 'texas' ,c4=>'name' );
$array2 = array( id => '12', c1 => '', c2 => '4500', c3 => 'arizona', c4=>'' );
foreach($array2 as $key =>$value)
{
if($value == '')
{
$array2[$key] = $array1[$key];
}
}
print_r($array2);
?>
试试这个
<?php
$array1 = array( id => '11', c1 => 'abcd', c2 => '4500', c3 => 'texas' ,c4=>'name' );
$array2 = array( id => '12', c1 => '', c2 => '4500', c3 => 'arizona', c4=>'' );
foreach($array2 as $key =>$value)
{
if($value == '')
{
$array2[$key] = $array1[$key];
}
}
print_r($array2);
?>