【PHP8.x】strpbrk関数の使い方

作成日: 更新日:

strpbrk関数は、指定された文字列の中から、特定の文字リストに含まれる文字のいずれかが最初に現れる場所を探し、その文字から元の文字列の最後までを返す関数です。

この関数は二つの引数を取ります。一つ目の引数であるhaystackは検索対象となる元の文字列で、二つ目の引数であるchar_listは検索したい文字をまとめたリストです。char_listには複数の文字を含めることができ、strpbrk関数は、haystack内でchar_listに含まれる文字のどれか一つでも最初に見つかれば、その文字からhaystackの残りの部分を結果として返します。

もしhaystackのどこにもchar_listに含まれる文字が全く見つからなかった場合は、この関数はブール値のfalseを返します。そのため、関数が返す結果を利用する際には、文字が見つからなかった場合のfalseという戻り値を適切に処理するよう注意が必要です。

例えば、ある文字列の中に特定の区切り文字や特殊文字が含まれているかを確認し、その文字から後ろの内容を取り出したい場合などに、この関数は非常に便利に利用できます。特定の条件に合致する文字を効率的に探し出す際に役立つ関数です。

基本的な使い方

構文(syntax)

<?php
$haystack = "Welcome to PHP programming.";
$characters = "oe"; // 'o' または 'e' のいずれかが最初に見つかる場所から最後までを取り出す

$result = strpbrk($haystack, $characters);

if ($result !== false) {
    echo $result;
} else {
    echo "指定された文字はいずれも見つかりませんでした。";
}
?>

引数(parameters)

string $haystack, string $characters

  • string $haystack: 検索対象の文字列
  • string $characters: 検索する文字のセットを指定する文字列

戻り値(return)

string|false

指定された文字セットのいずれかの文字が文字列内に最初に出現する位置から文字列の末尾までの部分文字列を返します。指定された文字セットのいずれの文字も文字列内に見つからなかった場合は、falseを返します。

【PHP8.x】strpbrk関数の使い方 | いっしー@Webエンジニア