今日の人気記事

  1. PHPのダウンロードとインストール - Windows環境
  2. PHP + Apache 環境の構築
  3. HTML内でPHPスクリプトを実行 - 埋め込み
  4. PHP + Apacheのインストール - Linux環境 - CentOS
  5. PHPサンプルコード集

指定した文字列以降の文字列を取得 - strstr()、strchr() - mb_strstr()

スポンサーリンク

プログラミング言語PHPで、文字列から指定した文字列を検索し、その文字列以降の文字列を取得する関数 strstr()、strchr()とマルチバイト版のmb_strstr()を紹介します。

strstr関数、strchr関数

string strstr ( string $haystack , mixed $needle [, bool $before_needle ] )
文字列から指定した文字列を検索し、指定した文字列以降の文字列を取得します。
strchr関数は、strstr関数のエイリアスです。文字列がマルチバイト文字を含む場合は、後述のmb_strstr関数を利用します。
引数
$haystack
検索対象の文字列を指定します。
$needle
検索する文字列を指定します。
$before_needle
trueを指定した場合、指定した文字列より前の文字列を取得します。
指定しない場合(false)、指定した文字列以降の文字列を取得します。
返り値
指定した文字列以降(あるいは、より前)の文字列を返します。
文字列が見つからない場合は、falseを返します。
スポンサーリンク

mb_strstr関数

string mb_strstr ( string $haystack , string $needle [, bool $before_needle = [, string $encoding ]] )
文字列から指定した文字列を検索し、指定した文字列以降の文字列を取得します。
マルチバイト文字を含む文字列も利用できます。
引数
$haystack
検索対象の文字列を指定します。
$needle
検索する文字列を指定します。
$before_needle
trueを指定した場合、指定した文字列より前の文字列を取得します。
指定しない場合(false)、指定した文字列以降の文字列を取得します。
$encoding
エンコーディングを指定します。
返り値
指定した文字列以降(あるいは、より前)の文字列を返します。
文字列が見つからない場合は、falseを返します。

サンプルコード

指定した検索対象の文字列から指定した文字列以降の文字列を取得するサンプルコードです。

strstr( 検索対象の文字列, 検索する文字列, [, true] )
mb_strstr( 検索対象の文字列, 検索する文字列, [, true] )
<?php
/* 文字列を定義 */
$string = "google.co.jp";

/* 指定した文字列を検索 */
var_dump( strstr($string, '.co') );
var_dump( strstr($string, '.co', true) );

/* マルチバイト文字を含む文字列を定義 */
$string = "PHP入門";

/* 指定した文字列(マルチバイト)を検索 */
var_dump( mb_strstr($string, '入') );
var_dump( mb_strstr($string, '入', true) );
?>

実行結果です。
検索対象の文字列から指定した文字列以降(あるいは、より前)の文字列を返します。

string(6) ".co.jp"
string(6) "google"
string(6) "入門"
string(3) "PHP"
スポンサーリンク

関連記事と広告