dポイントプレゼントキャンペーン実施中!

PHPのfgetcsvの関数でCSV内のデータを表示させる事はできました。
検索機能をつけようと思ってるのですが mb_preg_matchを使用するコードを是非書いて頂きたいです。
よろしくおねがいします><

A 回答 (2件)

で、どういう検索なの?



(1)キーワードを3つ渡して$data[1],$data[2],$data[3]のすべてに完全一致するもの?
(2)キーワードを1つ渡して$data[1],$data[2],$data[3]のどれかに完全一致するもの?
(3)キーワードを1つ渡して、$data[1],$data[2],$data[3]のどれかに部分一致するもの?

仕様がわからないのでなんとも言えません。
出力はヒットしたらprintすればよいのですね?

う~んはっきりいえば前回の回答でほとんど回答がすんでるとは思いますが
どこがわからないのでしょうか・・・

ちなみにfgetcsv()は序数は0~始まるので$data[0]からなのですが
ほんとうに$data[1]~[3]のデータでよいのでしょうか???
    • good
    • 0

csvから読み込んだデータをどのようにもっていて、


検索した結果をどう表現したいのか書かないと・・・

とりあえずはこんな感じ。
<?

$array=Array(
Array("aaa","bbb","ccc")
,Array("iii","jjj","kkk")
,Array("j123","j456","789j")
,Array("xxx","yyy","zzz")
);

$keyword="j";
$count=0;
foreach($array as $rownum => $row){
foreach($row as $colnum =>$val){
if(preg_match("/".preg_quote($keyword,"/i")."/",$val)) $res[]=(Array("col"=>$colnum,"row"=>$rownum,"text"=>$val));
}
}
print "<pre>";
print_r($res);
print "</pre>";
?>

この回答への補足

申し訳ないです

{$data[1]} {$data[2]} {$data[3]}のデータを検索したいのです。
よろしくおねがいします。
<?php
$csv = fopen ("system.csv", "r") or die(print "ファイルが見つかりませんでした。");
while ($data = fgetcsv ($csv, 1000,",")) {


print<<<eof
{$data[1]}
{$data[2]}
{$data[3]}

eof;

}

fclose($csv);

?>

補足日時:2008/09/01 23:20
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!