let say У меня есть один массив ($ results), содержащий массивы (location, start_date, coord_lng, coord_lat и т. Д.). Идея состоит в том, что я хотел бы отсортировать $ result по start_date, что довольно просто, используя array_multisort. Там, где становится все труднее, все остальные массивы (location, coord_lng, coord_lat и т. Д.) Должны быть реорганизованы одинаково, и я не знаю, как это сделать!php array sort synchronize
глядя на решении, представленный здесь: PHP: Sort multi-dimension array Я не уверен, как приспособиться к более чем 2-х массивам ...
Я произвел этот код, но есть что-нибудь быстрее?
foreach ($row['table'] as $key2 => $row2)
{
if($key2 != 'debut')
{
$dates = $results[$key]['table']['debut'];
array_multisort($dates, SORT_ASC, $results[$key]['table'][$key2]);
}
}
$dates = $results[$key]['table']['debut'];
array_multisort($dates, SORT_ASC, $results[$key]['table']['debut']);
Вы не показывают данные примера и что он должен быть после сортировки. – AbraCadaver
Возможно, вы можете использовать немного меньше памяти, если вы передадите '$ row2' по ссылке (используя' & 'в итерации цикла, например' $ key2 => & $ row2'). Затем вы можете напрямую манипулировать '$ row2' вместо вызова' $ results [$ key] ['table'] [$ key2] '. При этом я не думаю, что экономия будет особенно огромной, хотя ваш код будет немного легче понять. – Anton