歡迎光臨創(chuàng)新互聯(lián)!成都網(wǎng)站制作、成都域名注冊、成都虛擬主機(jī)、網(wǎng)站空間服務(wù)商,我們將竭誠為您提供最優(yōu)質(zhì)的服務(wù)!QQ:646608388 TEL:18982081108
域名注冊
虛擬主機(jī)
網(wǎng)站建設(shè)
企業(yè)郵局
網(wǎng)絡(luò)營銷
網(wǎng)站備案
服務(wù)器租用
用PHP調(diào)用Lucene包來實(shí)現(xiàn)全文檢索
- 作者:客服中心 文章來源:網(wǎng)站建設(shè) 點(diǎn)擊數(shù):425 更新時間:2008-4-05
- 而PHP程序就調(diào)用這兩個方法,實(shí)現(xiàn)對Lucene的調(diào)用,從而達(dá)到全文檢索的目的。
PHP的調(diào)用方法如下:
先創(chuàng)建一個我們寫的TxtFileIndexer類的實(shí)例,
$tf = new Java('TestLucene.TxtFileIndexer');
然后就按正常PHP類的調(diào)用方法的方式進(jìn)行調(diào)用,首先創(chuàng)建索引:
$data_path = "F:/test/php_lucene/htdocs/data/manual"; //定義被索引內(nèi)容的目錄
$index_path = "F:/test/php_lucene/htdocs/data/search"; //定義生成的索引文件存放目錄
$s = $tf->createIndex($index_path,$data_path); //調(diào)用Java類的方法
print $s; //打印返回的結(jié)果
這次再試試檢索:
$index_path = "F:/test/php_lucene/htdocs/data/search"; //定義生成的索引文件存放目錄
$s = $tf->searchword("here is keyword for search",$index_path);
print $s;
另外要注意Java類的路徑,可以在PHP里設(shè)置
java_require("F:/test/php_lucene/htdocs/lib/"); //
這是個例子,我的類和Lucene都放到這個目錄下,這樣就可以了,是不是很簡單。
PHP源代碼:test.php
error_reporting(0);
java_require("F:/test/php_lucene/htdocs/lib/");
$tf = new Java('TestLucene.TxtFileIndexer');
$s = $tf->test();
print "TestLucene.TxtFileIndexer->test()
".$s;
echo "
";
$data_path = "F:/test/php_lucene/htdocs/data/manual";
$index_path = "F:/test/php_lucene/htdocs/data/search";
if($_GET["action"] == "create") ...{
$s = $tf->createIndex($index_path,$data_path);
print $s;
}else ...{
echo "
";
if($_GET["w"] != "") ...{
$s = $tf->searchword($_GET["w"],$index_path);
print $s;
}
}
?>
接下來我把環(huán)境配置說一下,先需要有Java SDK,是必須的,我使用的是1.4.2版的,其它版本應(yīng)該也沒問題。PHP5,試過PHP4,應(yīng)該可以。由于PHP5帶的Java擴(kuò)展沒調(diào)通,并且以前用過調(diào)用Java效率很低,很慢,所以使用了 Php/Java Bridge 這個項(xiàng)目。
1. 下載JavaBridge URL:http://sourceforge.net/projects/php-java-bridge/ ,目前版本是php-java-bridge_3.0.8_J2EE.zip ,解包后把
a.JavaBridgeWeb-INFCGIjava-x86-Windows.dll
b.JavaBridgeWEB-INFlibJavaBridge.jar
復(fù)制到 c:phpext 目錄下,并把java-x86-Windows.dll 改名為 php_java.dll
2.修改php.ini(例)
extension=php_java.dll
[Java]
java.class.path = "C:phpextJavaBridge.jar;F:testphp_lucenehtdocs"
java.java_home = "C:j2sdk1.4.2_10"
java.library.path = "c:phpext;F:testphp_lucenehtdocs"
3.重啟Apache即可。
4.可以找一些文件進(jìn)行索引,在test.php里可以修改索引文件和數(shù)據(jù)文件的路徑。TxtFileIndexer.java的37行限制了只索引html后綴的文件,有需要也可以修改。
根據(jù)目前的情況(JavaBridge支持Linux和Freebsd),完全可以在linux或freebsd/apache2/php4/lucene/JavaBridge環(huán)境下運(yùn)行。
- 上一篇文章:php調(diào)用mysql存儲過程和函數(shù)
下一篇文章:PHP腳本數(shù)據(jù)庫功能詳解
服務(wù)電話:028-86922220 13518219792 公司地址:成都市太升南路288號錦天國際A幢1002號
支持信箱:service@cdxwcx.com 版權(quán)所有:創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)網(wǎng)絡(luò)公司 蜀ICP備13010860號
創(chuàng)新互聯(lián)成都網(wǎng)絡(luò)公司專業(yè)從事:成都網(wǎng)站設(shè)計,成都網(wǎng)站制作,成都網(wǎng)站建設(shè),成都網(wǎng)頁制作,成都網(wǎng)頁設(shè)計,成都網(wǎng)站開發(fā)以精湛技術(shù)為核心
五月天丁香婷婷狠狠爱|
亚洲国产av精品一区二区|
亚洲精品中文字幕无限乱码|
在线日韩欧美国产自拍|
日本中文在线不卡视频|
久久福利视频视频一区二区
|
欧美日韩最近中国黄片|
99久久免费看国产精品|
蜜桃传媒在线正在播放|
亚洲精品蜜桃在线观看|
日本一区二区三区久久娇喘|
亚洲欧美日韩精品永久|
办公室丝袜高跟秘书国产|
综合久综合久综合久久|
欧美成人免费视频午夜色|
欧美韩国日本精品在线|
亚洲成人免费天堂诱惑|
午夜直播免费福利平台|
日韩av生活片一区二区三区|
欧美日韩国产的另类视频|
美女被后入福利在线观看|
亚洲一区二区三区在线中文字幕|
日韩av生活片一区二区三区|
亚洲熟妇熟女久久精品|
日韩中文高清在线专区|
国产av大片一区二区三区|
最近日韩在线免费黄片|
欧洲亚洲精品自拍偷拍|
日韩国产传媒在线精品|
免费大片黄在线观看日本|
午夜精品久久久免费视频|
亚洲精品欧美精品日韩精品|
亚洲成人免费天堂诱惑|
激情偷拍一区二区三区视频|
亚洲天堂男人在线观看|
亚洲天堂国产精品久久精品|
国产精品午夜一区二区三区|
亚洲欧美日韩国产自拍|
中文字幕日韩无套内射|
亚洲人妻av中文字幕|
国产精品内射婷婷一级二级|