我想將值從舊陣列推送到新陣列。推送時我正在檢查物件值是否已經存在。僅當新陣列中不存在相同的物件值時,才應推送該值。這是我的代碼。
$sorted_array = array();
foreach ($data as $nkey => $value) {
if (count($sorted_array) > 0) {
dd($sorted_array[$nkey]);
if ($sorted_array[$nkey]['store'] != $value['store']) {
array_push($sorted_array, $value);
}
}
else{
array_push($sorted_array, $value);
}
}
uj5u.com熱心網友回復:
如果我理解正確,您可以使用以下in_array函式輕松處理它:
$sorted_array = array();
foreach ($data as $nkey => $value) {
if ( !in_array($value, $sorted_array) ) {
array_push($sorted_array, $value);
}
}
in_array函式回傳布林值。在我的代碼中,如果$value引數不在 中$sorted_array,那么它將被推送。否則不執行操作。
uj5u.com熱心網友回復:
array_push在這種情況下是錯誤的。試試這個代碼:
foreach ($data as $nkey => $value) {
if (count($sorted_array) > 0) {
if ($sorted_array[$nkey]['store'] != $value['store']) {
$sorted_array[$nkey] = $value;
}
}
}
希望能幫到你
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/336389.html
