У меня есть два массива с данными в них, и мне нужно сравнить два и создать один финальный массив .. вот моя ситуация:PHP - Сравнение двух многомерных массивов
// grab a list of the folders
$folders = glob("../*",GLOB_ONLYDIR);
// create empty array's which will contain our data
$projects_data = array();
$folders_array = array();
// list the contents of the config file
$data = json_decode(file_get_contents('.my-config'), true);
// loop through our data file
foreach($data['web_app']['projects'] as $project) :
// update our projects data array
$projects_data[] = $project;
endforeach;
// loop through each folder on our localhost
foreach($folders as $folder) :
// update our folders array
$folders_array[] = array(
'folder' => basename($folder),
'last_modified' => filemtime($folder),
'dir_size' => dirsize($folder)
);
endforeach;
поэтому у меня есть два массива .. как так:
$projects_data array
Array
(
[0] => Array
(
[folder] => GitHub Clones
[last_modified] => 1379974689
[dir_size] => 6148
)
[1] => Array
(
[folder] => MagentoPlayground
[last_modified] => 1380336582
[dir_size] => 82340978
)
[2] => Array
(
[folder] => Projects
[last_modified] => 1380581312
[dir_size] => 5954
)
)
$folders_array array
Array
(
[0] => Array
(
[folder] => MagentoPlayground
[last_modified] => 1380336582
[dir_size] => 82340978
)
[1] => Array
(
[folder] => Projects
[last_modified] => 1380581312
[dir_size] => 5933
)
[2] => Array
(
[folder] => old
[last_modified] => 1371064970
[dir_size] => 63385844
)
)
Мне нужно сравнить эти два массива .. Если есть один, который существует в верхнем массиве и не существует во втором массиве (GitHub Клоны), то мне нужно, чтобы удалить его. Если в нижнем массиве существует тот, который не существует в верхнем массиве (старый), тогда мне нужно его добавить. Думаю, мне понадобится третий массив с новыми данными, но я не уверен, как его структурировать.
Кроме того, если в обоих массивах есть две записи (MagentoPlayground), мне нужен новый массив для использования данных из нижнего массива. Нижний массив будет иметь самую последнюю актуальную марку и размер каталога.
Спасибо за любую помощь.
Вы должны прочитать эту и другие функции родственников http://php.net/manual/en/function.array-diff.php –