2013-03-22 80 views
0

如何實現以下內容?PHP:比較數組並將第一個數組值複製到第二個數組值,其中第二個數組值爲null

$array1 = array(id => '11', c1 => 'abcd', c2 => '4500', c3 => 'texas' ,c4=>'name'); 
$array2 = array(id => '12', c1 => '', c2 => '4500', c3 => 'arizona', c4=>''); 

我想比較陣列1和陣列2和從陣列1複製到陣列2值時陣列2值是null。從上面陣列我想從陣列1只複製C1 & C4鍵陣列2

感謝您的幫助

+0

..How沒去了? – George 2013-03-22 15:51:25

回答

4

例如怎麼樣foreach()循環:

foreach($array1 as $key=>$value){ 
    if(!$array2[$key]){ 
     $array2[$key] = $value; 
    } 
} 

和最小化的,但少讀:

foreach($array1 as $key=>$value){ 
    $array2[$key] = $array2[$key] ? $array2[$key] : $value; 
} 
+0

+1,實際上是最可讀的方式。 – raina77ow 2013-03-22 15:25:49

0

試試這個:

foreach($array2 as $key=>$value) 

if ($value==null) $array2[$key]=$array1[$key]; 
0

試試這個

<?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); 
?> 
+0

@Rajani你的歡迎隊友很高興幫助你:) – alwaysLearn 2013-03-22 15:49:43

相關問題