[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сортировка массива по последнему добавляемому элем
panfilov
Добрый день!
Подскажите пожалуйста как сделать так чтобы каждое последнее значение добавляемое в многомерный ассоциативный массив, при совпадении имён перезаписывалось в конец массива.
То есть, если есть a[ b ][ c ], a[ d ][ e ] и мы добавляем a[ b ][ f ]:


[ a ] => Array
(
[
b ] => Array
(
[
c ] => 111
)

[
d ] => Array
(
[
e ] => 222
)
)


a[ b ][ f ] = 333;


то у нас вышло:


[ a ] => Array
(
[
d ] => Array
(
[
e ] => 222
)

[
b ] => Array
(
[
c ] => 111
[ f ] => 333
)
)



Мне нужно создать структуру данных из которой будут выводиться работы от последней к первой.

Массив создаётся таким образом:


for ($j = 0; $j < count($client); $j++)
{
for ($i = 0; $i < $client_count[$client[$j]]; $i++)
{
$struct[$client[$j]] [$brand[$i]] [$id[$i]] = $name[$i];
}
}



В результате выводит:


Array
(
[
helenic] => Array
(
[
new] => Array
(
[
15] => Super
)

[
sprite] => Array
(
[
4] => Дизайн стенда Биогая
[5] => Дизайн стенда Хьюмер
)

[
cocacola] => Array
(
[
1] => Имидж Biogaya ORS
[2] => Календарь «Картотека»
[3] => Буклет Биогая Продентис
)

)

[
abbott] => Array
(
[
awa] => Array
(
[
6] => «За значительные успехи»
)

)

[
biola] => Array
(
[
biola] => Array
(
[
7] => Разработка героя
[8] => Концепт стикера
)

[
table] => Array
(
[
14] => Table
)

)

[
rus] => Array
(
[
car] => Array
(
[
12] => Audi
)

[
concept] => Array
(
[
11] => Concept car
[13] => Car concept
)

[
rus] => Array
(
[
9] => Серия имиджей
[10] => Название работы
)

)

)



Мне нужно отсортировать все элементы в массиве вот так:


Array
(
[
abbott] => Array
(
[
awa] => Array
(
[
6] => «За значительные успехи»
)

)

[
rus] => Array
(
[
rus] => Array
(
[
9] => Серия имиджей
[10] => Название работы
)

[
car] => Array
(
[
12] => Audi
)

[
concept] => Array
(
[
11] => Concept car
[13] => Car concept
)

)

[
biola] => Array
(
[
biola] => Array
(
[
7] => Разработка героя
[8] => Концепт стикера
)

[
table] => Array
(
[
14] => Table
)

)

[
helenic] => Array
(
[
cocacola] => Array
(
[
1] => Имидж Biogaya ORS
[2] => Календарь «Картотека»
[3] => Буклет Биогая Продентис
)

[
sprite] => Array
(
[
4] => Дизайн стенда Биогая
[5] => Дизайн стенда Хьюмер
)

[
new] => Array
(
[
15] => Super
)

)

)



Можно ли так сделать стандартными функциями и если нельзя то всё же как это сделать?
Я 2-й день голову ломаю.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.