判定方法: 1. strpos()を使用し、指定した文字が存在する場合は最初に出現した位置を返し、存在しない場合はFALSEを返します。 2. strrpos() を使用します。指定された文字が存在する場合は、最後に出現した位置を返し、見つからない場合は FALSE を返します。 3. 使用している場合は、stripos() を使用して、最初に出現する位置を返します。 4. strripos() を使用し、存在する場合は、最後の出現位置を返します。 5. 返された配列が空でない場合は、explode() を使用します。
このチュートリアルの動作環境: Windows7 システム、PHP バージョン 8.1、DELL G3 コンピューター
php 文字列に別の文字列が含まれているかどうかを検出する
方法 1: strpos() 関数を使用して検出します
strpos() 関数は次のことを検出できます。文字 別の文字列内で最初に出現する文字列の位置 (大文字と小文字が区別されます)。
指定された文字が存在する場合は、最初に出現した位置を返し、見つからない場合は FALSE を返します。
注: 文字列の位置は 1 からではなく 0 から始まります。
例:
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'y'; $findme2 = 'Y'; $mystring = 'xyz'; $pos1 = strpos($mystring, $findme1); $pos2 = strpos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
方法 2: strrpos() 関数を使用して検出する
strrpos() 関数can 別の文字列内で最後に出現する文字列を検索します (大文字と小文字は区別されます)。
指定された文字が存在する場合は、最後に出現した位置を返し、見つからない場合は FALSE を返します。
例:
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'C'; $findme2 = 'c'; $mystring = 'ABC'; $pos1 = strrpos($mystring, $findme1); $pos2 = strrpos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
方法 3:tripos() 関数を使用します。
stripos() 関数を使用して、 find 別の文字列内で最初に出現する文字列の位置 (大文字と小文字は区別されません)。
指定された文字が存在する場合は、最初に出現した位置を返し、見つからない場合は FALSE を返します。
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'y'; $findme2 = 'Y'; $mystring = 'xyz'; $pos1 = stripos($mystring, $findme1); $pos2 = stripos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
方法 4: strripos() 関数を使用して検出します
strripos() 関数は、別の文字列を検索できます。 string 最後の出現位置 (大文字と小文字は区別されません)。
指定された文字が存在する場合は、最後に出現した位置を返し、見つからない場合は FALSE を返します。
<?php header('content-type:text/html;charset=utf-8'); $findme1 = 'C'; $findme2 = 'c'; $mystring = 'ABC'; $pos1 = strripos($mystring, $findme1); $pos2 = strripos($mystring, $findme2); var_dump($pos1); var_dump($pos2); if($pos1){ echo $mystring." 中包含指定字符 $findme1 <br>"; }else{ echo $mystring." 中不包含指定字符 $findme1 <br>"; } if($pos2){ echo $mystring." 包含指定字符 $findme2 <br>"; }else{ echo $mystring." 不包含指定字符 $findme2 <br>"; } ?>
方法 5:explode() 関数を使用して検出します。
explode() 関数は、指定された区切り文字を使用して、 string を返し、文字列の配列を返します。
配列が空の配列でない場合 (配列の長さが 1 より大きい場合)、その配列が含まれます。それ以外の場合、配列は空であり、別の文字列が含まれていません。
<?php header('content-type:text/html;charset=utf-8'); $url = "001a.gif"; $str = "a"; $con = explode($str,$url); if (count($con)>1){ echo $url." 中包含 ".$str; }else{ echo $url." 中没有包含 ".$str; } ?>
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHPで指定された文字が文字列に含まれているかどうかを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。