韓日ミニ辞典開発歴に戻る

前項でインデックスファイルを配列に読み込みましたので,ここではその配列の中に検索すべき単語が含まれているか否かを判定します。
インデックスファイルは各行のデータが<>で区切られているので,これを見出し語とファイル名に分割して配列$data1 に読み込みます。次にその配列を$d_wordと$d_fileに読み込みます。$d_wordには見出し語が,$d_fileには見出し語に関する辞書データが保存されているファイル名が格納されます。
ループ検索で検索枠に入力された単語が$d_fileに含まれているか否かを判定し,見つかれば登録ファイル名を表示して終わります。
【注】以下の読み込みモジュールは,インデックスファイルを「BOM無し」で保存してあることを前提に組んであります。各行の先頭に<>を書いて保存した場合は,以下の2行を修正してください。
  $d_word[$i]=$data1[1];
  $d_file[$i]=$data1[2];

====== ここから開始 =============================

#----------------------#

# 見出し語の読み込み #

#----------------------#
  if (file_exists($index_word)) {
    $lines = file($index_word); //file()関数はファイルの内容を配列に読み込む。open/close不要
    $Line_count = count($lines);
    for ($i = 0; $i < $Line_count; $i++) {
      $data1 = explode("<>", $lines[$i]);
      $d_word[$i]=$data1[0];
      $d_file[$i]=$data1[1];
    }
    for ($i = 0; $i < $Line_count; $i++) {
      if ($d_word[$i] == $word){
      //見つかった
        $found = $i+1;
        $targ_f = $targ_dir.$d_file[$i];
        print "単語が見つかりました! 登録ファイル名【".$d_file[$i]."】<br>\n";
        break;
      }
    }
    if ($found==0){print $word."は未登録語です。<br>\n";}
    }
  return $found;
}

韓日ミニ辞典開発歴に戻る


トップ   編集 凍結解除 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2011-06-19 (日) 09:06:57 (3205d)