気軽に読めるPHP入門書・PHPスクリプトが動かないときの原因と対策などを紹介します。

  1. PHP関数
  2. 11 view

文字列を分割して配列を作成するexplode関数

文字列を分割して配列する定番の関数がexplode関数です。次の例では、「2014/09/17」のような日付を「/」で分割して配列に格納しています。

<?php
$date = date("Y/m/d");
$ar = explode("/", $date);
print_r($ar);
?>

○実行結果

Array ( [0] => 2014 [1] => 09 [2] => 17 ) 

詳しくは、以下のページをご覧ください。

PHPマニュアル:explode

特定の位置の要素を表示する

文字列を配列に分割して、特定の要素を表示したい場合は、PHP5.4以降であれば関数の戻り値を直接配列として扱うことができます。次の例では配列の先頭要素の「年」を表示しています。

<?php
$date = date("Y/m/d");
echo explode("/", $date)[0];
?>

○実行結果

2014

つまり、「配列を返す関数[0]」と記述すれば戻り値の先頭要素を直接表示することができます。

指定数の要素を除外して配列を作成する

特定の個数の要素のみを配列に格納すれば良いのであれば、explode関数の3番目のパラメータに負の数で「除外する要素数」を指定します。次の例では、「年月日」から最後の2つの要素「月日」が除外されて「年」のみが配列に格納されます。

<?php
$date = date("Y/m/d");
$ar = explode("/", $date, -2);
print_r($ar);
?>

○実行結果

Array ( [0] => 2014 )

ちなみに、3番目のパラメータに正の数を指定すると「作成される配列の要素数
」になります。最後の要素には、分割しきれなかった文字列がまとめて格納されます。次の例では「2」を指定しているので、先頭には「年」、2番目の要素には「月/日」が格納されます。

<?php
$date = date("Y/m/d");
$ar = explode("/", $date, 2);
print_r($ar);
?>

○実行結果

Array ( [0] => 2014 [1] => 09/17 ) 

PHP関数の最近記事

  1. mb_send_mail関数でReturn-Pathを設定する方法

  2. is_numeric関数とis_int関数の違い

  3. PHPのdate関数の使用例

  4. isset関数とempty関数と「!」の違い

  5. 文字列を分割して配列を作成するexplode関数

関連記事

PAGE TOP