Я хочу добавить массив в массив массива. Затем выполните проверку существования предыдущего добавленного массива. Вот как я делаю проверку.
for ($x = 0; $x <= 10; $x++){
$data = array(
'order_id' => $invoice->order_id,
);
$datas = array();
// this is the array contains array I create to
// let me check whether $data exist in it.
foreach ($datas as $value){
if ($value['order_id']==$data['order_id']){
//if the $data already exist in $datas
print "ok";
}
$datas = array_push($datas,$data);
// push $data to $datas for the next checking of existing of $data,
// that means, next time if same order id exist, it will be found in
// the above checking.
}
Тем не менее, код, кажется, не работает, как это сделать?
Сообщение об ошибке:
Invalid argument supplied for foreach()
array_push() expects parameter 1 to be array, null given
В вашем коде есть несколько ошибок.
$datas
пуст (комментарий mwweb)foreach
пропустить }
Я бы посоветовал вам использовать ассоциативный массив, чтобы проверить, является ли ваш заказ частью данных:
$datas[$data['order_id']] = $data;
тогда вы можете проверить это с isset($datas[$data['order_id']])
Других решений пока нет …