PHPに限らずプログラムを組む場合、文字列検索をする場合が非常に多いことに気づきます。任意のファイルから入力された文字列を検索して表示するという処理が最も一般的でしょう。

アルゴリズム
1) 任意のファイルを配列に格納
2) 1行ずつ文字列が存在するかチェック
3) 文字列見つかったらその1行を配列へ格納
4) 最期に見つけてきた行を格納した配列を表示

使う関数
file, for, strpos, preg_match

■strposを使った文字検索

<?php
$str = "test";
$mystr = "This is a test.";
if(strpos($mystr, $str) > -1) { print "ari"; }
else { print "nasi"; }
?>

■preg_matchを使った文字検索

<?php
$str = "test";
$mystr = "This is a test.";
if(preg_match("/$str/", $mystr)) { print "ari"; }
else { print "nasi"; }
?>

では、特定のファイルを開いて、任意の文字列が含まれているかチェックし、含まれていたらその行を表示してみましょう。
continue reading…