関数・クラス解説

str_split

version:PHP 5, PHP 7 (公式)

文字列を分割し配列で返却

フォーマット

array : str_split ( string $string [, int $split_length = 1 ] )

パラメータ

string $string (必須)
分割したい文字列を指定

int $split_length = 1
文字列を分割する長さを指定。ここで指定した長さ(バイト)ごとに文字列 $string が分割される

返値 array
分割された文字列を配列で返却されます。split_length が 1 未満を指定した場合は FALSE が返ります。split_length が string の長さより大きい場合、要素数が 1 だけの配列が返ります。

解説

文字列をsplit_length で指定の長さ(バイト)で分割し、結果を配列にへ格納して返却されます。

注意: str_split() でのマルチバイト文字列の扱いは、文字単位ではなくバイト単位での分割になります。

記述サンプル

//PHP 7.4.6で実行
//文字列を指定
$str = "test word!";

//実行
$result = str_split($str);

//結果表示
print_r($result);
Array
(
    [0] => t
    [1] => e
    [2] => s
    [3] => t
    [4] =>  
    [5] => w
    [6] => o
    [7] => r
    [8] => d
    [9] => !
)

//長さ3 を指定して実行
$result = str_split($str, 3);

//結果表示
print_r($result);
Array
(
    [0] => tes
    [1] => t w
    [2] => ord
    [3] => !
)

/* ----------------------------- */


//文字列を指定
$str = "word!!";

//実行 文字列の長さよりも大きい長さを指定
$result = str_split($str, 12);

//結果表示
print_r($result);
Array
(
    [0] => word!!
)

/* ----------------------------- */

//マルチバイト文字列を指定
$str = "テスト文字列";

//実行 
$result = str_split($str, 4);

//結果 マルチバイト文字列でも、バイト単位で分割されるので以下のように文字化けする
print_r($result);
Array
(
    [0] => テ�
    [1] => ����
    [2] => �文
    [3] => 字�
    [4] => ��
)

参考リンク

preg_split 正規表現で文字列を分割する
chunk_split 文字列に指定した長さ毎に指定文字を挿入する
count_chars 文字列内の各文字についてバイト値に関する情報を返す
explode 文字列を指定した文字で分割し配列で返す
str_word_count 文字列に含まれる単語の数や単語に関する情報を返却する

タグ

分割 配列 String 文字列


公式リファレンス

書式

str_split ( string $string [, int $split_length = 1 ] ) : array

説明

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

パラメータ

string
入力文字列。
split_length
分割した部分の最大長。

返値

オプションのパラメータ split_length が指定されている場合、 返される配列の各要素は、split_length の長さとなります。それ以外の場合、1 文字ずつ分割された配列となります。 split_length が 1 より小さい場合に FALSE を返します。split_length が string の長さより大きい場合、文字列全体が 最初の(そして唯一の)要素となる配列を返します。

注意

注意: str_split() でのマルチバイト文字列の扱いは、文字単位ではなくバイト単位での分割になります。

サンプル

例1 str_split() の使用例

$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 )

参考

  • chunk_split() - 文字列をより小さな部分に分割する
  • preg_split() - 正規表現で文字列を分割する
  • explode() - 文字列を文字列により分割する
  • count_chars() - 文字列で使用されている文字に関する情報を返す
  • str_word_count() - 文字列に使用されている単語についての情報を返す
  • for
  • ワード検索


    ※入力キーワードが、関数名・説明文・タグに含まれるものを検索

    関数名アルファベット別

    A B C D E F G H I J
    K L M N O P Q R S T
    U V W X Y Z _

    最終更新一覧

    stristr
     大文字小文字を区別せず文字列を検索し、ヒット箇所以降(あるいは以前)の文字列を返却

    stripslashes
     バックスラッシュでエスケープされた文字列から、バックスラッシュを取り除く

    stripos
     大文字小文字を区別せずに文字列が最初に現れる位置を取得する

    stripcslashes
     addcslashes() でクォートされた文字列をアンクォートする

    strip_tags
     文字列から HTML と PHP のタグを除去して返却

    strcspn
     指定した文字が最初に現れる位置を調べる

    strcoll
     ロケールに基づいて2つの文字列を比較し同じか(あるいは大小)を判定する

    strcmp
     2つの文字列を比較し同じか(あるいは大小)を判定する

    strchr
     strstr() のエイリアス

    strcasecmp
     2つの文字列を比較(大文字小文字を区別せず同じとみなす)

    カテゴリー一覧

    PHP の振る舞いの変更
    音声フォーマットの操作
    認証サービス
    コマンドライン関連
    圧縮およびアーカイブ
    暗号
    データベース関連
    日付および時刻関連
    ファイルシステム
    自然言語および文字エンコーディング
    画像処理および作成
    メール関連
    数学
    テキスト以外の MIME 型
    プロセス制御
    その他の基本モジュール
    その他のサービス
    検索エンジン用の拡張モジュール
    サーバー固有のモジュール
    セッション関連
    テキスト処理
    変数・データ型関連
    ウェブサービス
    Windows 用のモジュール
    XML 操作
    GUI用の拡張モジュール