2014-10-21 116 views
0

我有兩個數組:比較一個陣列與另一併替換缺失值PHP的

$a1=array("Maths","English","Science","ICT"); 
$a2=array("Maths","ICT"); 

我想比較$ A1與$ A2,然後返回

$a3=array("Maths",",,",",,","ICT"); 

所以替換缺失值$ A2與 「,,」

這是我的微薄努力:(

$a1=array("Maths","English","Science","ICT"); 
$a2=array("Maths","ICT"); 
$result = array_diff($a1, $a2); 
foreach ($result as $v){ 
$a3 = str_replace($v, ",,", $a1); 
} 
print_r($a3); 

回答

1

高興你理解了它,但我認爲這可能會更好地工作:

<?php 

$a1 = array("Maths", "English", "Science", "ICT"); 
$a2 = array("Maths", "ICT"); 

$a3 = $a1; 

$keys = array_keys(array_diff($a1, $a2)); 
foreach ($keys as $key) 
    $a3[$key] = ',,'; 

print_r($a3); 

Output

Array 
(
    [0] => Maths 
    [1] => ,, 
    [2] => ,, 
    [3] => ICT 
) 
0

想通了,謝謝如果你看:

$a1=array("Maths","English","Science","ICT"); 
$a2=array("Maths","ICT"); 

$result = array_diff($a1, $a2); 

foreach ($result as $v){ 

$v = str_replace($result, ",,", $a1); 

} 
print_r($v); 
+0

此次榮獲」如果你有一個叫做「生物化學」和「化學」的學科,那麼你就可以工作。 [實施例](https://eval.in/private/60d2b8380fa020)。 – 2014-10-21 23:45:17

+0

我剛剛遇到與「英語」和「英語點亮」有關的確切問題? – user1721230 2014-10-22 00:01:43

+0

我鼓勵你看看我的答案。即使主題包含其他主題的部分,它也會起作用。 – 2014-10-22 00:02:43

相關問題