Strict Standards: Resource ID#29 used as offset, casting to integer (29) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#31 used as offset, casting to integer (31) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401

Strict Standards: Resource ID#32 used as offset, casting to integer (32) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/fm.class.php on line 401
ТвойWeb :: Версия для печати :: Перемещение элементов в массиве...
ТвойWeb » WebMaster класс » PHP/Perl » Перемещение элементов в массиве...

Страниц (1): [1]
 

1. Ray Wen - 18 Апреля, 2005 - 04:09:01 - перейти к сообщению
Такая вот проблема возникла... ассоциативный массив, нужна возможность менять порядок элементов в нем, например перемещать вверх или вниз... Как проще это сделать и есть ли для этого функции в php?
2. TvoyWeb - 18 Апреля, 2005 - 18:21:31 - перейти к сообщению
Ray Wen
Я с эти сталкивался только отчасти, но предопределенной функции на PHP не нашел. Один вариант перебирать массив в цикле и переписывать его. Либо делать свою пользовательскую функцию. Если ты знаешь ключи элементов которые хочешь переместить.
То есть поменять местами между собой.
3. ETC - 19 Апреля, 2005 - 01:24:22 - перейти к сообщению
PHP:

function swapKeys($arr,$key1,$key2) {
$tmp = $arr[$key1];
$arr[$key1] = $arr[$key2];
$arr[$key2] = $arr[$key1];
return $arr;
}
$array = swapKeys($array,0,1);


Одна из функций, возвращает массив, в котором поменяны местями два ключа... это как вариант. Можно прогонять через цикл и менять местами каждые два ключа...
4. Ray Wen - 19 Апреля, 2005 - 02:44:43 - перейти к сообщению
TvoyWeb
ETC
Спасибо... Буду пробовать... Улыбка
5. TvoyWeb - 19 Апреля, 2005 - 08:51:35 - перейти к сообщению
В принципе можно использовать uasort и в качестве условия передавать функцию. Хотя нужно конкретно задачу видеть.

Форум на AlfaSpace.NET


Powered by ExBB
ExBB FM 1.0 RC1 by TvoyWeb.ru
InvisionExBB Style converted by Markus®

[Script Execution time: 0.0368]     [ Gzipped ]



Notice: ob_end_flush(): failed to send buffer of ob_gzhandler (1) in /home/tvoyweb/domains/tvoyweb.ru/public_html/forums/include/page_tail.php on line 33