PHPのexplode()関数とは?文字列を配列に分割する使い方を徹底解説
この記事では、PHPに標準で組み込まれている定義済み関数の一つであるexplode()関数の基本的な使い方について、初心者にもわかりやすく解説します。
explode関数は、「文字列を特定の区切りを基準に分割し、配列を生成する」ための関数です。PHPのexplode関数を使うことで、ひとつの文字列をより小さな単位に分割できます。このとき分割の基準となる文字や記号のことを区切り文字(デリミタ)と呼びます。
構文
explode関数の基本構文は以下のとおりです。
explode(区切り文字, 対象文字列, 要素数)
パラメータ
explode関数は3つの引数を受け取り、そのうち2つが必須、1つが省略可能です。それぞれの役割を詳しく見ていきましょう。
1. 区切り文字(separator)
文字列を分割する境界点となる文字を指定します。この文字が対象の文字列内に現れるたびに、そこが配列の1つの要素の終わりであり、次の要素の始まりとなります。
2. 対象文字列(string)
配列に分割したい入力文字列を指定します。必須の引数です。
3. 要素数(limit)
省略可能な引数で、返される配列の要素数を制御します。正・負・ゼロのいずれの整数も指定できます。
- 正の値を指定した場合:最大でその数の要素を持つ配列が返され、最後の要素には残りの文字列すべてが含まれます。
- 負の値を指定した場合:末尾からその数分の要素を除いた配列が返されます。
- 0を指定した場合:1と同じ扱いになり、文字列全体が1つの要素になります。
サンプルコード
<?php
$Original = "Hello,Welcome To Tutorials Point";
print_r(explode(" ", $Original));
print_r(explode(" ", $Original, 3));
?>
実行結果
Array ( [0] => Hello,Welcome [1] => To [2] => Tutorials [3] => Point )
Array ( [0] => Hello,Welcome [1] => To [2] => Tutorials Point )
コードの解説
上記の例では、最初のexplode関数の呼び出しでは第3引数を指定していないため、半角スペースを区切り文字として文字列全体が分割され、4つの要素からなる配列が生成されています。
一方、2番目の呼び出しでは第3引数に「3」を指定しているため、先頭から2つずつ分割された後、残りの文字列すべてが最後の要素としてまとめられ、合計3つの要素を持つ配列が返されています。
このようにexplode関数を使いこなせば、CSV形式のデータの解析やURLパラメータの処理など、文字列操作が必要なさまざまな場面で活用できます。
-
PHPのexplode()関数とは?文字列を分割する使い方とパラメータの詳細解説
PHPのexplode()関数は、指定した区切り文字列(デリミタ)をもとに、文字列を分割して配列として返すための関数です。CSV形式のデータ処理や、スペース区切りのテキストを分解したい場合など、さまざまな場面で活用できます。構文explode(delimiter, str, limit)パラメータdelimiter − 文字列を分割するための境界文字列(区切り文字)を指定します。str − 分割対象となる入力文字列です。limit − 返される配列の要素数を指定します(省略可能)。limitには以下の値を指定できます。0より大きい値 − 最大でlimit個の要素を持つ配列を返します。最後の要素
-
PHPのarray()関数とは?配列の作成方法をわかりやすく解説
PHPのarray()関数は、配列を作成するための関数です。PHPにおける配列には、主に以下の3種類が存在します。インデックス配列 − 数値インデックス(0から始まる番号)で要素を管理する配列連想配列 − 文字列などの名前付きキーで要素を管理する配列多次元配列 − 配列の中に1つ以上の配列を含む、入れ子構造の配列構文// 数値インデックスを持つ配列(インデックス配列) array(value1, value2, ...); // 名前付きキーを持つ配列(連想配列) array(key1 => value1, key2 => value2, ...)パラメータvalue − 配列に