4 メソッド: 1. strpos() を使用します。構文は「strpos(string, another string)」で、返された位置の値が含まれます。 2. strrpos() を使用します。構文は「strrpos(string, another string)」で、返された位置の値が含まれます。 3. 「explode(another string, string)」という構文でexplode()を使用します。返された配列が空の配列である場合、その配列は含まれません。 4. strstr() を使用します。構文は「strstr(string, another string)」です。FALSE が返された場合は含まれません。
このチュートリアルの動作環境: 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:explode() 関数を使用して検出する
explode()関数の使用法 文字列を分割するための区切り文字を指定し、文字列の配列を返します。
配列が空の配列でない場合 (配列の長さが 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; } ?>
方法 4: strstr() 関数を使用して検出します。
strstr() 関数は、別の文字列内で最初に出現する文字列を検索します。
この関数は、文字列の残りの部分 (一致する点から) を返します。検索された文字列が見つからない場合は false を返します。
<?php header('content-type:text/html;charset=utf-8'); $email = 'user@example.com'; $str='@'; $domain = strstr($email, $str); if ($domain){ echo $email." 中包含 ".$str; }else{ echo $email." 中没有包含 ".$str; } ?>
推奨学習: 「PHP ビデオ チュートリアル 」
以上がPHPで指定された文字列に別の文字列が含まれているかどうかを検出する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。