PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのstrpos()関数とは?使い方と実例を解説

PHPのstrpos()関数は、ある文字列の中で指定した文字列が最初に出現する位置を検索するための関数です。文字列操作の中でも非常によく使われる基本関数の一つで、特定のキーワードが含まれているかどうかの判定などにも活用できます。

構文

strpos(str, find, begin)

パラメータ

  • str − 検索対象となる元の文字列

  • find − 検索したい文字列(探す対象)

  • begin − 検索を開始する位置(省略可能)。先頭は0から数えます。

戻り値

strpos()関数は、指定した文字列が見つかった場合はその最初の出現位置を返します。文字列が見つからなかった場合はfalseを返します。なお、位置は0番目から数えられる点に注意してください。

使用例1

以下は、strpos()関数を使って文字列内の「demo」という語の位置を取得する例です。

<?php
    echo strpos("This is demo text !","demo");
?>

出力

8

この例では、「This is demo text !」という文字列の中で「demo」が8番目の位置(0から数えて)に最初に出現しているため、8が出力されます。

使用例2:検索開始位置を指定する

第3引数で検索開始位置を指定すると、その位置以降から検索が行われます。

<?php
    $str = 'pqr pqr';
    $pos = strpos($str, 'p', 1);
    echo $pos;
?>

出力

4

この例では、文字列「pqr pqr」に対して位置1から検索を開始しているため、先頭(位置0)にある「p」は無視され、次に出現する位置4が返されます。

注意点

  • 戻り値の判定には「==」ではなく「===」を使用することをおすすめします。位置0が返された場合、緩い比較ではfalseと誤判定される可能性があります。

  • 大文字・小文字を区別せずに検索したい場合は、stripos()関数を使用してください。

  1. PHPのquoted_printable_decode()関数とは?使い方とサンプルコードを解説

    PHPのquoted_printable_decode()関数は、quoted-printable形式でエンコードされた文字列を、8ビット文字列にデコードするために使用されます。メール本文などで使われるquoted-printableエンコーディングを元に戻したい場合に便利な関数です。 構文 quoted_printable_decode(str) パラメータ str − デコード対象となる入力文字列を指定します。 戻り値 quoted_printable_decode()関数は、デコード後の8ビットASCII文字列を返します。 使用例 以下は、quoted_printable_dec

  2. PHPのnl_langinfo()関数の使い方をわかりやすく解説

    PHPのnl_langinfo()関数は、現在のロケール(言語・地域設定)に関する情報を取得するための関数です。曜日名や月名、通貨記号、数値の書式など、ロケール固有のさまざまな情報を要素単位で取り出すことができます。通常、setlocale()でロケールを設定した後に使用します。 注意: この関数はWindows環境では動作しません。LinuxなどのUNIX系プラットフォームでのみ利用可能です。 構文 nl_langinfo(ele) パラメータ ele − 取得したい情報の要素を指定します。指定できる主な要素は以下の通りです。 時刻・カレンダー関連 ABDAY_(1-7) − 番号で指