我想比較$badArray
與數組$companyArray
並創建一個名爲$goodArray
的新數組。如果$companyArray
包含$badArray
匹配Company_Name
則不要將此添加到$goodArray
。我在$badArray
中有1197個值,在$companyArray
中有1410個值。我比較使用兩個foreach
循環數組,但由於某些原因,$goodArray
不能正常生成它到底應該包含213項,但只包含從$companyArray
,這不是壞的最後條目。我希望這是有道理的,有人可以告訴我我做錯了什麼,以及是否有更好的方法來篩選兩個陣列?比較數組並創建新數組(如果它不包含值)
public function SortGoodFromBad($badArray, $companyArray) {
$goodArray = array();
$i=0;
foreach($companyArray as $row => $value) {
foreach($badArray as $companyName => $companyRow) {
if($companyName !== $value['Company_Name']) {
$goodArray = array('Company Name'.$i => $value['Company_Name']);
$i++;
} else {
}
}
}
echo "<PRE>";
print_r($goodArray);
echo "</PRE>";
}
你應該看看'array_diff' - 它返回兩個數組之間的區別,所以你可以使用它像'$ goodArray =和array_diff($ companyArray,$ badArray)' - HTTP: //php.net/manual/en/function.array-diff.php –