icon
icon

PHPでarray_spliceを使う方法を現役エンジニアが解説【初心者向け】

初心者向けにPHPでarray_spliceを使う方法について現役エンジニアが解説しています。PHPのarray_splice()関数とは配列の一部を削除したり、他の要素で置換することができる関数です。引数には開始位置や終了位置、置き換える場合は配列を指定します。

テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日  調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名  調査手法:インターネット調査

今回は、PHPでarray_spliceを使う方法について、TechAcademyのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。

 

PHPについてそもそもよく分からないという方は、PHPとは何なのか解説した記事を読むとさらに理解が深まります。

 

なお本記事は、TechAcademyのオンラインブートキャンプ、PHP/Laravel講座の内容をもとに紹介しています。

 

田島悠介

今回は、PHPに関する内容だね!

大石ゆかり

どういう内容でしょうか?

田島悠介

PHPでarray_spliceを使う方法について詳しく説明していくね!

大石ゆかり

お願いします!

 

array_spliceとは

PHPのarray_splice()関数、配列の一部を削除したり、他の要素で置換できる関数です。

array_spliceを使う方法

array_splice()関数の基本的な使い方を見ていきましょう。

array_splice ( $配列, $開始位置[, $削除する要素の数 [, $置き換える要素を含んだ配列 ]] )

第一引数には、削除する要素を含んだ対象の配列を渡します。

第二引数には、最初の要素から何個目の要素から削除するかを指定します。

渡す数値が正の数の場合は先頭から数え、負の数の場合は、末尾から数えた位置から開始します。

第三引数には、オプションとして、削除する要素の数を指定できます。

指定しなかった場合は、第二引数から指定した位置から、末尾までの要素を削除します。

正の数を渡した場合は、第二引数で渡した開始位置から第三引数で渡した正の数分の要素を削除します。

負の数を渡した場合は、削除する要素の数を末尾から数えます。

第四引数には、削除した要素に変わる要素を引数の配列の要素に含めることで、要素を置換します。

削除された要素は配列として返却されます。

[PR] PHPプログラミングで挫折しない学習方法を動画で公開中

実際に書いてみよう

それでは、array_splice()関数を使用して実際に削除する例と、要素を置換する例を見ていきましょう。

まずは、配列の要素を削除する例です。

<?php
$fruits = array( "りんご", "みかん",  "れもん", "メロン" );
// 削除された要素を出力
print_r(array_splice($fruits, 2, 2));
// 削除後の配列を出力
print_r($fruits);

 

出力結果

Array
(
    [0] => れもん
    [1] => メロン
)
Array
(
    [0] => りんご
    [1] => みかん
)

上記の例では、第一引数で渡した配列$fruitsから、第二引数で渡した2を元に開始位置を”みかん”の要素に設定し、第三引数で渡した数値2の数分要素を削除して返却しています。

そのため、一つ目の出力結果では、削除された要素を含む配列が出力されます。

二つ目の出力結果は削除後の配列$fruitsの中身です。

削除した要素がなくなっていることが確認できます。

次に、配列の要素を置換する例を見ていきましょう。

<?php
$fruits = array( "りんご", "みかん",  "れもん", "メロン" );
$addFruiuts = array("ぶどう", "もも");
// 配列の要素を置換して、削除された要素を出力
print_r(array_splice($fruits, 2, 2, $addFruiuts));
// 置換後の配列を出力
print_r($fruits);

 

出力結果

Array
(
    [0] => れもん
    [1] => メロン
)
Array
(
    [0] => りんご
    [1] => みかん
    [2] => ぶどう[3] => もも
)

上記の例では、array_splice()関数の第四引数に置換する要素を含む配列$addFruiutsを渡すことで、削除した要素の部分に$addFruiutsが含む要素が追加され、配列の要素が置換されたことが確認できます。

筆者プロフィール

平野大輝(ひらのだいき)

スキル:PHP・Java・JavaScriptを用いて様々なアプリを開発するWebエンジニア。

 

大石ゆかり

内容分かりやすくて良かったです!

田島悠介

ゆかりちゃんも分からないことがあったら質問してね!

大石ゆかり

分かりました。ありがとうございます!

 

TechAcademyでは、初心者でも、PHPやフレームワークのLaravelを使ってWebアプリケーション開発を習得できる、オンラインブートキャンプを開催しています。

また、現役エンジニアから学べる無料体験も実施しているので、ぜひ参加してみてください。

初心者・未経験でもできる。まずはテックアカデミーに相談しよう

プログラミングを独学で学習していて、このように感じた経験はないでしょうか?

  • ・調べてもほしい情報が見つからない
  • ・独学のスキルが実際の業務で通用するのか不安
  • ・目標への学習プランがわからず、迷子になりそう

テックアカデミーでは、このような 学習に不安を抱えている方へ、マンツーマンで相談できる機会を無料で提供 しています。
30分間、オンラインでどんなことでも質問し放題です。

「受けてよかった」と感じていただけるよう カウンセラーやエンジニア・デザイナー があなたの相談に真摯に向き合います。

「自分に合っているか診断してほしい」
「漠然としているが話を聞いてみたい」

こんなささいな悩みでも大丈夫です。

無理な勧誘は一切ありません ので、まずはお気軽にご参加ください。
※体験用のカリキュラムも無料で配布いたします。(1週間限定)

今なら参加者限定の割引特典付き! 無料相談を予約する