我想使用 Solr 来使学习管理服务包具有搜索功能。我从这里阅读并试用了官方教程:http: //lucene.apache.org/solr/4_3_0/tutorial.html。在这里:http ://wiki.apache.org/solr/IntegratingSolr
但是,我想不出如何将 Solr 集成到 PHP 包中。
我必须在包中包含哪些文件以及我需要进行哪些修改才能启用 Solr 索引和搜索?
任何帮助/发布/相关教程都会有所帮助。
我想使用 Solr 来使学习管理服务包具有搜索功能。我从这里阅读并试用了官方教程:http: //lucene.apache.org/solr/4_3_0/tutorial.html。在这里:http ://wiki.apache.org/solr/IntegratingSolr
但是,我想不出如何将 Solr 集成到 PHP 包中。
我必须在包中包含哪些文件以及我需要进行哪些修改才能启用 Solr 索引和搜索?
任何帮助/发布/相关教程都会有所帮助。
为了将 php 与 Solr 集成,可以使用日光浴室。Solarium 提供了非常好的构建,并提供了大量用于从 php 使用 Solr 的功能。与 SolPhp 等其他选项相比,日光浴室也维护得很好。
这是一本书,它很好地介绍了集成的工作原理以及如何使用 php 来利用 Solr 的所有功能。
1.下载并安装php web server(XAMPP)
2.在环境变量中设置PHP路径(C:\xampp\php)
3.下载并安装composer(如果程序崩溃,请更改兼容性)
4.打开文件“C:\xampp\php\php.ini”并取消注释 extension=php_curl.dll 和 extension=php_openssl.dll
5.composer安装成功后(C:\ProgramData\Composer\bin)有composer.phar文件可用或下载composar.phar文件
6.打开命令提示符并转到您的composer.phar文件路径,创建一个文件名composer.json(php composar.phar init)
#Microsoft Windows [Version 6.2.9200]
(c) 2012 Microsoft Corporation. All rights reserved.
C:\Users\RKJ>cd C:\ProgramData\Composer\bin
C:\ProgramData\Composer\bin>php composer.phar init
Welcome to the Composer config generator
This command will guide you through creating your composer.json config.
Package name (<vendor>/<name>) [RKJ/bin]: a/b
Description []:
Author:
Minenter code hereimum Stability []:
License []:
Define your dependencies.
Would you like to define your dependencies (require) interactively [yes]? no
Would you like to define your dev dependencies (require-dev) interactively [yes]
? no
{
"name": "a/b",
"require": {
}
}
Do you confirm generation [yes]? yes
然后编辑您的 composer.json 文件并将 require feild 更新为 "solarium/solarium": "3.0.0"
或将文件另存为 composer.json { "name": "rkj/abc", "require": { "solarium/solarium": "3.0.0" } }
7.type >>php composer.phar 安装供应商文件夹将在您的路径中可用
8.将 vandor 文件夹复制到您的 php 工作区(C:\xampp\htdocs)并使用以下脚本进行检查
<?php
$config = array(
'endpoint' => array(
'localhost' => array(
'host' => 'localhost', 'port' => '8080', 'path' => '/solr/collection1/select?
q=*%3A*&wt=json&indent=true'
)
)
);
// new Solarium Client object
include(__DIR__ . '/vendor/autoload.php');
$client = new Solarium\Client($config);
print('helllo<br>');
$ping = $client->createPing();
// execute the ping query
try{
$result = $client->ping($ping);
echo 'Ping query successful';
echo '<br/><pre>';
var_dump($result->getData());
}catch(Solarium\Exception $e){
echo 'Ping query failed';
}
?>