[PHP-users 31154] grepでの文字検索とstrposでの文字検索の違い

Takamori Mitsuki hashibata @ gmail.com
2006年 12月 28日 (木) 18:20:35 JST


お世話になります。
grepとstrposの比較をするため
文字列から「あ」という文字を検索する
プログラムを作成しました。

しかしながら同じと思われた検索結果が
微妙に違っています。

原因は、どこにあるのでしょうか?

<?php

// Linuxのgrepコマンド
$result_grep = array();
exec("grep 'あ' strdata.dat", $result_grep);
echo count($result_grep) . "\n";

// PHPのstrposコマンド
$result_strpos = array();
$arr = file("strdata.dat");
for ($i=0; $i<count($arr); $i++) {
	if (strpos($arr[$i], "あ") !== false) {
		$result_strpos[] = $arr[$i];
	}
}
echo count($result_strpos) . "\n";

// PHPのstrposコマンド
$result_strpos = array();
$arr = file("strdata.dat");
for ($i=0; $i<count($arr); $i++) {
	if (mb_strpos($arr[$i], "あ") !== false) {
		$result_strpos[] = $arr[$i];
	}
}
echo count($result_strpos) . "\n";

?>


PHP-users メーリングリストの案内