PHPで文字列を配列に変換する方法

PHPで文字列を配列に変換する方法 PHP

PHPで、文字列を配列に変換する方法をまとめて、紹介します。

explode関数で指定な区切りにより、配列に変換①

explodeの説明

array explode ( string $delimiter, string $string )
文字列を配列に変換します。
配列の要素は、指定した文字列を指定した区切り文字列で、区切られた部分になります。
正規表現不可 
引数
 $delimiter 区切る文字列を指定します。
 $string 配列に変換する文字列を指定します。
返り値
 文字列から変換した配列を返します。

サンプルコード

サンプルコード:
<?php
  // 文字列を分割
  $arrayDayList = explode (“/”,”2020/06/13″);
  
  print_r($arrayDayList);
結果:
Array
(
    [0] => 2018
    [1] => 01
    [2] => 31
)

preg_split関数で指定な区切りにより、配列に変換②

preg_splitの説明

array preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] )
指定した文字列を、正規表現で分割します。
※正規表現可
引数
  pattern
    検索するパターンを表す文字列。
  subject
    入力文字列。
  limit
    これを指定した場合、最大 limit 個の部分文字列を返します。 残りの文字列は、最後の部分文字列に含めて返されます。 limit が -1 あるいは 0 の場合は「制限が無い」ことを意味します。
  flags
    flags は、次のフラグを組み合わせたものとする (ビット和演算子 | で組み合わせる)ことが可能です。

返り値
  pattern にマッチした境界で分割した subject の部分文字列の配列を返します。失敗した場合に FALSE を返します。 

サンプルコード

<?php
// 文字列を分割
$arrPregSplit = preg_split(“/[\s,]/”,”111,222,333 444″);
 
// preg_splitの結果を出力して値を確認
echo var_dump($arrPregSplit);
結果:
array(4) {
  [0] =>
  string(3) “111”
  [1] =>
  string(3) “222”
  [2] =>
  string(3) “333”
  [3] =>
  string(3) “444”
}

区切りが存在しない場合、分割する方法③

wordwrap(ワードラップ)とは、文字列を指定した文字数に分けてくれる関数です。

$変数名 = wordwrap(文字列, 分割する文字数, 分割する部分に入れる文字[, true/ false]);
//第一引数=文字列、第二引数=分割する文字数、第三引数=分割部分に入れる文字、第四引数=true/false

例として、文字列「1234567890」を5桁ごとに分けて、配列に変換する。

コード:
<?php
$str = “1234567890”;
$wordwrap_str = wordwrap($str,5,’,’,true);
$arr_str = explode(‘,’, $wordwrap_str);
var_dump($arr_str);
結果:
array(2) {
  [0]=>
  string(5) “12345”
  [1]=>
  string(5) “67890”
}

コメント

タイトルとURLをコピーしました