[PHP-users 19694]Re: 配列の任意の位置への要素の挿入

k.watanabe k.watanabe @ spclink.com
2004年 1月 5日 (月) 17:05:52 JST


k-wataと申します。

> 配列の任意の位置に要素の挿入は行えるのでしょうか?
> 最初 (shift, unshift), 最後 (push, pop, []) のみ可能と思っています。

array_spliceはどうでしょう?
http://jp.php.net/manual/ja/function.array-splice.php

例)配列 $input の2要素目に 'black' を挿入する。

<?php
$input = array ("red", "green", "blue", "yellow");
array_splice ($input, 1, 0, 'black');

print_r($input);

?>

結果は、こんな感じです。

Array
(
    [0] => red
    [1] => black
    [2] => green
    [3] => blue
    [4] => yellow
)


しかし、連想配列だと・・・

<?php
$input = array ( "red" => "red1", "green" => "green1", "blue" => "blue1",
"yellow" => "yellow1");
array_splice ($input, 1, 0, 'black');

print_r($input);

?>

結果は、こんな感じになってしまいますが・・・。

Array
(
    [red] => red1
    [0] => black
    [green] => green1
    [blue] => blue1
    [yellow] => yellow1
)

# Perl にもあったので、PHPにもあるかなぁと探したらありました(汗)

--
k.watanabe



PHP-users メーリングリストの案内