今日の人気記事

  1. 配列を文字列に変換する - implode()
  2. 簡単なPHPスクリプトを動かしてみよう
  3. ファイルから1行ずつ読み込む - fgets()
  4. ユニークなファイル名の一時ファイルを作成 - tempnam()
  5. ヒアドキュメント

配列の要素を削除・置換 - array_splice()

当ページのリンクには広告が含まれています。

プログラミング言語PHPで、指定した位置から配列の要素を削除・置換する関数 array_splice()を紹介します。

array_splice関数

array array_splice ( array &$input , int $offset [, int $length [, mixed $replacement = array() ]] )
指定した位置から配列の要素を削除・置換します。
引数
&$input
配列を削除・置換する配列を指定します。
参照渡し(&が付いてる)なので、引数として渡した変数自体の値が変化します。
$offset
要素の位置を指定します。
指定した値が負の値の場合、配列の末尾から逆回りで位置を数えます。
$length
取得する要素の数を指定します。省略した場合は「$offset」から最後まで。
$replacement
置換する配列を指定します。
返り値
削除する要素を含む配列を返します。

サンプルコード - 配列の要素を削除

指定した位置から配列の要素を削除するサンプルコードです。

array_splice( 配列, 削除を開始する位置 )
<?php
/* 配列を定義 */
$a = array('い', 'ろ', 'は', 'に', 'ほ', 'へ', 'と');
print_r($a);

/* 指定した位置から配列を削除 */
print_r( array_splice($a, 2) );
print_r($a);
?>

実行結果です。

Array
(
    [0] => い
    [1] => ろ
    [2] => は
    [3] => に
    [4] => ほ
    [5] => へ
    [6] => と
)
Array
(
    [0] => は
    [1] => に
    [2] => ほ
    [3] => へ
    [4] => と
)
Array
(
    [0] => い
    [1] => ろ
)

array_splice() の返り値として削除する要素を含む配列が返されます。指定した配列「$a」は要素が削除されています。

サンプルコード - 配列の要素を置換

指定した位置から配列の要素を削除・置換するサンプルコードです。

array_splice( 配列, 削除を開始する位置, 要素の数, 置換する配列 )
<?php
/* 配列を定義 */
$a = array('い', 'ろ', 'は', 'に', 'ほ', 'へ', 'と');
$b = array('あ', 'い', 'う');

/* 指定した位置から配列を削除 */
print_r( array_splice($a, 2, 4, $b) );
print_r($a);
?>

実行結果です。

Array
(
    [0] => い
    [1] => ろ
    [2] => は
    [3] => に
    [4] => ほ
    [5] => へ
    [6] => と
)
Array
(
    [0] => は
    [1] => に
    [2] => ほ
    [3] => へ
)
Array
(
    [0] => い
    [1] => ろ
    [2] => あ
    [3] => い
    [4] => う
    [5] => と
)

配列の要素が削除され、指定した配列「$b」に置換されていることがわかります。

配列 の人気記事

  1. 配列の値に数値インデックスを付ける - array_values()
  2. 配列のキーを大文字 / 小文字に変更 - array_change_key_case()
  3. 配列の要素を逆順に - array_reverse()
  4. 配列の要素をシャッフル - shuffle()

関連記事(一部広告含む)