問題:當$ Current與所有$ subs不匹配時插入$ Current。插入If Ifse在Foreach數組PHP
foreach ($array1 as $index=>$Current){
foreach ($array2 as $key=>$subs){
echo "\nCurrent: ".$Current; //get current
echo "\nsubs: ".$subs; //get subs
if ($Current== $subs){
echo "\n++++++\n";
} else{
echo "\n=====\n";
$sql = "INSERT INTO `#__table` (user_id, cat_id, subs) VALUES (".$userid.",".$other_array [$index].",".$Current.")";
echo "\n".$sql;
}
}
}
實際的輸出是:
Current: 1
subs: 9
=====
INSERT INTO `#__table` (user_id, cat_id, subs) VALUES (1,1,1)
Current: 1
subs: 11
=====
INSERT INTO `#__table` (user_id, cat_id, subs) VALUES (1,1,1)
Current: 1
Subs: 1
+++++
我預期的輸出應該比較當前後執行插入SQL和潛艇是不同的。這可能是這樣的:
Current: 1
subs: 9
=====
Current: 1
subs: 11
=====
Current: 1
Subs: 1
+++++
// EXECUTE THIS AFTER COMPARING ALL Current and subs ***
INSERT INTO `#__table` (user_id, cat_id, subs) VALUES (1,1,Current)
那麼我該如何編寫foreach循環?或者我不應該使用foreach?
請幫忙。謝謝。
你可能要重新考慮你的問題的話,我不知道你在問什麼。爲什麼這是預期的產出? – castis 2015-01-15 17:08:43
@castis在完成2個數組的所有比較之後,我需要執行insert sql。如果遵循實際輸出,則會多次插入相同的記錄。 – oook 2015-01-15 17:10:44