Всем привет, вообщем сразу вопрос. Имеется следующий код:
$data_dst_1 =json_decode($json, true);
$data_dst_2 =json_decode($json2, true);
foreach ($data_dst_1 as $sept_1) { $DataArray_1[] = array("Rx" => $sept_1["Rx"],"sesTxBytes" => $sept_1["Tx"]); }
foreach ($data_dst_2 as $sept_2) { $DataArray_2[] = array("Rx" => $sept_2["Rx"],"sesTxBytes" => $sept_2["Tx"]); }
data_dst_1 и data_dst_2 тоже являются массивом.
Как мне из 2-го массива DataArray_2[] вычесть массив DataArray_1[]. Сложность в том что массив имеет вид вложенность, то есть $DataArray_2[] и DataArray_1[] это массивы в которые динамически попадает ещё массив который декодируется из JSON.
Функция
array_map('function',$DataArray_1,$DataArray_2);
ругается если идёт передача DataArray_1[] и DataArray_2[] как одновременно так и по одному. Причём если я опускаю скобки в коде:
foreach ($data_dst_1 as $sept_1) { $DataArray_1 = array("Rx" => $sept_1["Rx"],"sesTxBytes" => $sept_1["Tx"]); }
foreach ($data_dst_2 as $sept_2) { $DataArray_2 = array("Rx" => $sept_2["Rx"],"sesTxBytes" => $sept_2["Tx"]); }
Всё успешно выполняется. Но так не нужно, потому что выводится только первая строчка массива. Учитывая что массив принимает другие динамические массивы это может от 1 до нескольких тысяч. Не могу понять в чём проблема.