【PHP】「strpos」関数で指定文字の最初の位置を確認する方法
【PHP】
「strpos」関数で指定文字の最初の位置を確認する方法
「strpos」関数は、
「指定した文字」を「対象の文字列」から検索し、
「最初の位置」を返してくれる関数。
PHPには、指定した文字を検索してくれる関数がある。
文字列の有無を確認する関数は、
・「strpos」関数 = 文字列内に指定した文字列の有無を確認し、一番最初の位置を数字で返す。
がある。
・「strstr」関数 - 指定した文字列の最初の位置を数字で返す
・「preg_match」関数 - 正規表現で指定した文字列の最初の位置を数字で返す
・「preg_match_all」関数 - 正規表現で指定した文字列を全て検索し配列で返す
・「array_search」関数 - 配列の値を検索し、一致した値のキーを返す
・「in_array」関数 - 配列内の値を検索し、結果を論理値で返す
などがあります。
文字列の有無を確認する関数
「PHP」の文字列の有無を確認する関数には、
・「strpos」関数 = 文字列内に指定した文字列の有無を確認し、一番最初の位置を数字で返す。
・「strstr」関数 - 指定した文字列の最初の位置を数字で返す
・「preg_match」関数 - 正規表現で指定した文字列の最初の位置を数字で返す
・「preg_match_all」関数 - 正規表現で指定した文字列を全て検索し配列で返す
・「array_search」関数 - 配列の値を検索し、一致した値のキーを返す
・「in_array」関数 - 配列内の値を検索し、結果を論理値で返す
などの関数がある。
使い勝手の良いものや、
配列のみに使用できるもの、
文字列だけにしか使用できないもの、
文字列の指定に正規表現が使えるものなど、
いくつかの関数があります。
検索結果も、
配列の位置を示したり、
文字列の先頭からの文字数を示したりと、
それぞれの関数の特徴があります。
Back
「strpos」関数で文字の有無を確認する方法
「strpos」関数は、
文字列内に指定した文字列が存在するかを確認し、
一番最初に現れる場所の位置を数字で返してくれる。
指定した文字で文字列を分割したいときなどに、
文字を見つけて処理分岐をする際に使える関数。
「strpos」関数の書式
strpos (検索する文字列変数,検索したい文字列 [, int $offset = 0 ] )
検索する文字列変数 |
検索対象となる文字列を入力。
変数でもよい。
文字列を直接記述する場合は、「”文字列”」と言うように「”」で囲む。
|
検索したい文字列 |
検索したい文字列を「”」で囲んで「”検索する文字列”」と記述する。
変数にして記述しても良い。
|
$offset |
何文字目から検索を始めるか指定する。
負の数での指定は不可。
|
検索した文字列が見つかった場合、何文字目に見つかったのか数字で返す。
文字列の開始位置は0。
見つからない場合は、「FALSE(false)」を返す。
条件分岐の指定では、「0」「false」を混同しないように注意。
・「0」は、文字列の1番最初の文字
・「false」は、文字列が見つからない
と明確に区分しなければならない。
サンプルコード
if(strpos($Sample,"探したい文字列")>=0){
見つかった場合の処理
}else{
見つからなかった場合の処理
}
Back