strstr( string $haystack, mixed $needle[, bool $before_needle] )

strstr( string $haystack, mixed $needle[, bool $before_needle] )は、検索対象文字列「$haystack」の中から、検索文字列「$needle」を探し、その検索文字列「$needle」が最初に見付かった位置から、検索対象文字列「$haystack」の終わりまでの、部分文字列を得る組み込み関数。

検索対象文字列「$haystack」の先頭から、検索文字列「$needle」が最初に見付かった位置のひとつ前までの、部分文字列を得ることもできる。

検索文字列が見付からなかった場合、「FALSE」を返す。

stristrと似ているが、strstrは、大文字小文字を区別する。

定義

文字列型 strstr( 文字列型 $haystack, 多様な型 $needle[, 論理型 $before_needle] );

「文字列型 $haystack」の文字列の中から、「多様な型 $needle」の文字列を探し、その文字列が最初に見付かった位置から、「文字列型 $haystack」の文字列の終わりまでの、部分文字列を得る。

「論理型 $before_needle」に「TRUE」を指定すると、「文字列型 $haystack」の文字列の先頭から、「多様な型 $needle」が最初に見付かった位置のひとつ前までの、部分文字列を得る。

パラメータ

文字列型 $haystack

検索対象文字列を指定する。

多様な型 $needle

検索したい文字列を指定する。

大文字小文字を区別する。

論理型 $before_needle

「TRUE」を指定すると、「文字列型 $haystack」の先頭から、「多様な型 $needle」が最初に見付かった位置のひとつ前までの、部分文字列を得る。

「PHP 5.3.0」で追加されたパラメータ。

戻り値

「文字列型 $haystack」の文字列の中から、「多様な型 $needle」の文字列を探し、その文字列が最初に見付かった位置から、「文字列型 $haystack」の終わりまでの、部分文字列を返す。

「論理型 $before_needle」に「TRUE」を指定すると、「文字列型 $haystack」の先頭から、「多様な型 $needle」が最初に見付かった位置のひとつ前までの、部分文字列を返す。

見付からなかった場合は、「FALSE」を返す。

構文

検索文字列から最後までの部分文字列を得る

部分文字列 = strstr( 検索対象文字列, 検索文字列 );

「検索対象文字列」から「検索文字列」を探し、その「検索文字列」が最初に見付かった位置から、「検索対象文字列」の終わりまでの、「部分文字列」を得る。

先頭から検索文字列の前までの部分文字列を得る

部分文字列 = strstr( 検索対象文字列, 検索文字列, true );

「検索対象文字列」から「検索文字列」を探し、「検索対象文字列」の先頭から、「検索文字列」が最初に見付かった位置の前までの、「部分文字列」を得る。

サンプル

部分文字列を得る(1)

<?php
$var = "a:b:c";
echo strstr( $var, ":" );
?>

↓↓↓出力結果↓↓↓

:b:c

部分文字列を得る(2)

<?php
$var = "PHPリファレンス > 組み込み関数 > 文字列 > strstr()";
echo substr( strstr( $var, ">" ), 2 );
?>

↓↓↓出力結果↓↓↓

組み込み関数 > 文字列 > strstr()

部分文字列を得る(3)

<?php
$var = "webmaster@hoge.tld";
echo substr( strstr( $var, "@" ), 1 ) . "<br />";
echo strstr( $var, "@", true );
?>

↓↓↓出力結果↓↓↓

hoge.tld
webmaster

スポンサード リンク

カテゴリー: PHP, 文字列, 検索, 組み込み関数 タグ: パーマリンク