ホームページ >バックエンド開発 >PHPチュートリアル >Webサイト構築:検索エンジンの実装_PHPチュートリアル

Webサイト構築:検索エンジンの実装_PHPチュートリアル

WBOY
WBOYオリジナル
2016-07-20 11:04:411321ブラウズ

強力な検索エンジンを搭載することはすべての Web サイトの願いですが、強力な検索エンジンの作成には、効率、精度、速度などの多くの側面が含まれます。詳細な調査とは、特定のコンテンツに対する正確なクエリです。
複雑で強力な検索エンジンには、多くのプログラムとデータベースのスキルが必要です。
検索エンジンはどのように機能するのでしょうか? 、指定された範囲内で検索し、検索結果を返します。
指定されたキーワードは情報コンテンツのどこにでもあり、検索エンジンは次のデータベース ステートメントを使用します。
select * from table where ( name like '%".$keyword."%');
name は検索する特定の場所で、通常はフィールド名です。 like '%".$keyword."%' は $keyword を検索するためのパターンです。コンテンツ内で例を見てみましょう:
データ テーブル ニュースでキーワード「good」を含むすべてのタイトルを検索します:
select * from news where ( title like '%good%'); これは、すべてのタイトルを検索できる正確な検索です。データベースには、あいまい検索もあります:
select * from news where (title like '%good');
この方法で、ニュースにタイトルなどのフィールドが含まれていると仮定します。メッセージ、ユーザーなど。タイトルのみが検索されるため、上記の検索範囲は狭すぎます。他のフィールドを検索する必要があります。操作を複雑にしすぎないようにするにはどうすればよいですか。
プログラム内の値が変更されていることに気付きました。このメソッドはここでも機能し、検索したい範囲を変数として使用できるため、次のようなデータベース構文になります:
mysql_query("select * from news where ($name like '% ".$keyword."%'));
$name には転送されたフィールド変数の値が格納され、この変数値は HTML の選択ドロップダウン送信フォームを通じて完了します。
制限したい場合の実現方法。たとえば、5 日以内の情報を検索したいとします。
ちなみに、このユニオンの構文は次のとおりです。 "select * from news where ($name like
'%".$keyword."%') and time> ;date_sub('$time',interval 5 day)"); $time は検索の現在時刻です。 : $time=date('Y-m-d H:i:s'); time は、データベースが情報を格納するフィールドです
次に、$old を 5 に置き換えます:
mysql_query("select * from news where ($name like
) '%".$keyword."%') and time>date_sub('$time',interval $old day)") ;
$old の同じ値が、選択した送信フォームを通じて異なる制限された時間に送信され、これはは非常に強力な検索エンジンです。
さらに強力な検索エンジンには、上記の原則自己拡張テストを使用できるプログラミング スキルが必要です。



http://www.bkjia.com/PHPjc/445190.html

www.bkjia.com

tru​​e

http://www.bkjia.com/PHPjc/445190.html

強力な検索エンジンを搭載することはすべての Web サイトの願いですが、強力な検索エンジンの作成には、効率、精度、速度などの多くの側面が含まれます。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。