开发者

PHP Insert at particular index

I want to move elemen开发者_C百科t of array present at 1st index to the 5th index in the array. How can I do that?


Although there are currently at least 2 valid answers to the question you asked, an array is not the right the right data structure to hold a list which has frequent changes and where ordering is important. These solutions will start to get very slow as the size of the array increases.

The right structure would be linked list, unfortunately AFAIK the bundled PHP implementation (splDoublyLinkedList) does not support inserts either.


If you really mean "move", than that can be something like this

$from = 1;
$to = 5;
$el = $array[$from];
unset($array[$from]);
$array = array_merge (
    array_slice($array,0,$to),
    array($el),
    array_slice($array,$to));

Cant test it, but the idea is: We take and remove the Element at $from from the original array, than we split the rest at $to and merge all together. Maybe some index in array_slice() does not match exactly;)


$arr[4]=$arr[0];
unset($arr[0]);
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜