【PHP】strpos 関数の使い方

strpos 関数は、「ある文字列」「特定の文字列」が含まれているかチェックする関数です。

 

 

strpos 関数の構文

strpos 関数の構文です。

strpos(“文字列”, “探したい文字列”)

 

  • 第1引数がチェック対象の文字列
  • 第2引数が探したい文字列

 

※正規表現は使えません。

 

【返り値】

  • 検索対象の文字列が見つかった場合 ← 見つかった文字列の位置を返す
  • 検索対象の文字列が見つからなかった場合 ← 「false」を返す

 

そのため条件分岐で処理を変えるようなプログラムを作る場合は、falseが「返ってくる」「返ってこない」かで分岐させます。

 

ある文字列に特定の文字列が含まれているか探して条件分岐で処理を変える

strpos 関数の使い方(利用方法)ですが、上でも書きましたが、ある文字列に特定の文字列が含まれているのか探して条件分岐で処理を変えるという使い方ができます。

 

【プログラム例】

[test@cent07 renshu]$ vi strpos.php

<?php
$line = ‘2018-04-01’;
$keyword = ‘2018’;
if (strpos($line, $keyword) !== false) {
    echo “2018年です。\n”;
}

$line1 = ‘IPアドレスは(192.168.1.10)’;
$keyword1 = ‘IPアドレス’;
if (strpos($line1, $keyword1) !== false) {
    echo “IPアドレスが含まれています。\n”;
}

?>
[test@cent07 renshu]$

 

【プログラム実行結果】

[test@cent07 renshu]$ php strpos.php
2018年です。
IPアドレスが含まれています。
[test@cent07 renshu]$

 

 

試しに「正規表現」を使ってみる

試しに「正規表現」を使ってみて機能しないことを確認します。

 

【プログラム例】

[test@cent07 renshu]$ vi strpos.php

<?php

 

$line = ‘2018-04-01’;
$keyword = ‘2018’;
if (strpos($line, $keyword) !== false) {
    echo “2018年です。\n”;
}

$line1 = ‘IPアドレスは(192.168.1.10)’;
$keyword1 = ‘IP*’; ← ためしに正規表現を使ってみます。
if (strpos($line1, $keyword1) !== false) {
    echo “IPアドレスが含まれています。\n”;
}

?>

 

 

【プログラム実行結果】

[test@cent07 renshu]$ php strpos.php
2018年です。
[test@cent07 renshu]$

 

 

 

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

コメント

コメントする

AlphaOmega Captcha Medica  –  What Do You See?
     
 

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください