str_split

(PHP 5, PHP 7, PHP 8)

str_split文字列を配列に変換する

説明

str_split(string $string, int $length = 1): array

文字列を配列に変換します。

パラメータ

string

入力文字列。

length

分割した部分の最大長。

戻り値

オプションのパラメータ length が指定されている場合、 返される配列の各要素は、length の長さとなります。但し、平等に分割できない場合、 最後の要素だけはその長さより短くなります。 デフォルトでは、 length の値は 1 です。 つまり、 1バイトずつ分割された配列となります。

エラー / 例外

length が1より小さい場合、 ValueError がスローされます。

変更履歴

バージョン 説明
8.2.0 string が空の場合、 空の配列が返されるようになりました。 これより前のバージョンでは、空文字列がひとつ入った配列が返されていました。
8.0.0 length が1より小さい場合、 ValueError がスローされるようになりました。 それより前のバージョンでは、 E_WARNING レベルの警告が発生し、 false を返していました。

例1 str_split() の使用例

<?php

$str
= "Hello Friend";

$arr1 = str_split($str);
$arr2 = str_split($str, 3);

print_r($arr1);
print_r($arr2);

?>

上の例の出力は以下となります。

Array
(
    [0] => H
    [1] => e
    [2] => l
    [3] => l
    [4] => o
    [5] =>
    [6] => F
    [7] => r
    [8] => i
    [9] => e
    [10] => n
    [11] => d
)

Array
(
    [0] => Hel
    [1] => lo
    [2] => Fri
    [3] => end
)

注意

注意:

str_split() でのマルチバイト文字列の扱いは、文字単位ではなくバイト単位での分割になります。 コードポイント単位で文字列を分割するには、 mb_str_split() を使います。

参考

  • mb_str_split() - マルチバイト文字列を受取り、文字の配列を返す
  • chunk_split() - 文字列をより小さな部分に分割する
  • preg_split() - 正規表現で文字列を分割する
  • explode() - 文字列を文字列により分割する
  • count_chars() - 文字列で使用されている文字に関する情報を返す
  • str_word_count() - 文字列に使用されている単語についての情報を返す
  • for