ywork2020.com

Title

文字列の中に任意の文字列が含まれるかを調べる

目次 (INDEX)

str_contains とは

ここで説明する str_contains とは次の語句からなる PHP の関数です。
string
読み: ストリング
意味: 文字列、糸、一連、一続きのもの
contains
読み: コンテインツ
意味: 含む

目次に戻る

str_contains 関数の概要

この関数は、検索対象の文字列の中に、任意の文字列が含まれるかを真偽値で返します。

目次に戻る

構文

サンプルを見る前に構文を確認しておきます。

$blnContains = str_contains(strHaystack, strNeedle);
  • $blnContains: 戻り値です。真偽値 (true or false)
  • strHaystack: 検索の対象となる文字列です。 haystack は 「 干し草 」 という意味です。
  • strNeedle: この文字列が含まれるかを調べます。 needle は 「 針 」 という意味です。

余談になるかもしれませんが、構文に使われている引数の意味は 「 干し草の中の 1 本の針 」 という言葉 ( a needle in a haystack ) から この様な表現をしています。

目次に戻る

サンプルコードと実行結果

ここでは、"a needle in a haystack" という文字列の中に "needle" 、 または "flower" という文字列が含まれるかを str_contains() を使って調べています。

サンプルコード: HTML ( 拡張子は .php )
<body>
<?php
	... 
?>
</body>
  • 02: <?php (php のコードを記述するための開始タグです。)
  • 03: ... (この行は [ サンプルコード: PHP ] の内容の部分です。)
  • 04: ?>(php の記述を終了するための終了タグです。)
  • ここでは HTML ドキュメントの body 要素内に php の開始タグと終了タグを置いていますが、 開始タグと終了タグはドキュメントのどの部分に設置しても構いませんし、ドキュメント内の複数の場所に分けて記述しても問題ありません。 また、HTML ドキュメントとしてではなく、純粋に php のコードのみを記述しても構いません。 ただし、どの記述方法であろうともファイルの拡張子は .php であることが必要です。
サンプルコード: PHP
<?php
	$haystack = "a needle in a haystack";
	var_dump( str_contains($haystack, "needle") );
	echo("<hr>");
	var_dump( str_contains($haystack, "flower") );
?>
  • 02: $haystack (文字列を代入した変数です。)
  • 03 str_contains($haystack, "needle") ($haystack の中に "needle" が含まれるかを調べています。戻り値は 1 となり var_dump() で処理すると true となります。)
  • 05 str_contains($haystack, "flower") ($haystack の中に "flower" が含まれるかを調べています。戻り値は 0 となり var_dump() で処理すると false となります。)
実行結果:

Fatal error: Uncaught Error: Call to undefined function str_contains() in /home/ywork2020/ywork2020.com/public_html/content/php-str_contains.php:119 Stack trace: #0 {main} thrown in /home/ywork2020/ywork2020.com/public_html/content/php-str_contains.php on line 119