UPDATE:2017年03月29日
配列要素の削除や追加をしたい
配列操作 配列の要素の削除と追加 array_splice()
結果の配列 = array_splice(入力の配列, 削除開始位置 [, 削除する長さ, 置換する値]); //[]省略可能
例:
1 2 3 4 5 6 | <!-- サンプルコード --> <?php $ary = array(1, 2, 3, 4, 5, 6, 7, 8); array_splice($ary , 2); var_dump($ary); ?> |
結果は
となります。
1 2 3 4 5 6 7 8 9 10 11 | <!-- サンプルコード --> <?php array_splice($ary, 2);//3つ目の要素から 最後まで削除 array_splice($ary, 4);//5つ目の要素から 最後まで削除 array_splice($ary, -2);//最後から2つ目の要素から 最後まで削除 array_splice($ary, -4);//最後から4つ目の要素から 最後まで削除 array_splice($ary, 2, 2);//3つ目の要素から 2つ削除 array_splice($ary, 3, 1);//4つ目の要素から 1つ削除 array_splice($ary, 2, -3);//3つ目の要素から 最後から3つ目まで削除 array_splice($ary, 4, -2);//5つ目の要素から 最後から2つ目まで削除 ?> |
- 削除する位置や長さは正負の数値で指定
- 置換する値は配列で指定。配列でなかった場合は強制的に配列型になる
- 入力配列の数値添字は保存されない
サンプルコード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 | <!-- サンプルコード --> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, 2) 3つ目の要素から 最後まで削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, 2); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, 4) 5つ目の要素から 最後まで削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, 4); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, -2) 最後から2つ目の要素から 最後まで削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, -2); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, -4) 最後から4つ目の要素から 最後まで削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, -4); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, 2, 2) 3つ目の要素から 2つ削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, 2, 2); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, 3, 1) 4つ目の要素から 1つ削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, 3, 1); foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, 2, -3) 3つ目の要素から 最後から3つ目まで削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, 2, -3); //最後から2つ目の要素から 最後まで削除 foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> <h3>配列操作 配列の要素の削除と追加 array_splice($ary, 4, -2) 5つ目の要素から 最後から2つ目まで削除</h3> array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');<br> ↓<br> <?php $ary = array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black'); array_splice($ary, 4, -2); //最後から4つ目の要素から 最後まで削除 foreach($ary as $key => $value){ print "キー(\$key) : {$key} 値(\$value) : {$value}<br>\n"; } ?> |
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
配列操作 配列の要素の削除と追加 array_splice($ary, 4) 5つ目の要素から 最後まで削除
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
キー($key) : 2 値($value) : blue
キー($key) : 3 値($value) : yellow
配列操作 配列の要素の削除と追加 array_splice($ary, -2) 最後から2つ目の要素から 最後まで削除
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
キー($key) : 2 値($value) : blue
キー($key) : 3 値($value) : yellow
キー($key) : 4 値($value) : gray
配列操作 配列の要素の削除と追加 array_splice($ary, -4) 最後から4つ目の要素から 最後まで削除
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
キー($key) : 2 値($value) : blue
配列操作 配列の要素の削除と追加 array_splice($ary, 2, 2) 3つ目の要素から 2つ削除
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
キー($key) : 2 値($value) : gray
キー($key) : 3 値($value) : white
キー($key) : 4 値($value) : black
配列操作 配列の要素の削除と追加 array_splice($ary, 3, 1) 4つ目の要素から 1つ削除
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
キー($key) : 2 値($value) : blue
キー($key) : 3 値($value) : gray
キー($key) : 4 値($value) : white
キー($key) : 5 値($value) : black
配列操作 配列の要素の削除と追加 array_splice($ary, 2, -3) 3つ目の要素から 最後から3つ目まで削除
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
キー($key) : 2 値($value) : gray
キー($key) : 3 値($value) : white
キー($key) : 4 値($value) : black
配列操作 配列の要素の削除と追加 array_splice($ary, 4, -2) 5つ目の要素から 最後から2つ目まで削除
array('red', 'green', 'blue', 'yellow', 'gray', 'white', 'black');
↓
キー($key) : 0 値($value) : red
キー($key) : 1 値($value) : green
キー($key) : 2 値($value) : blue
キー($key) : 3 値($value) : yellow
キー($key) : 4 値($value) : white
キー($key) : 5 値($value) : black
タグ(=記事関連ワード)
日付
最終更新日:2017年03月29日