运行elasticsearch查询的php代码
我是elasticsearch的新手。我想用elasticsearch搜索mysql数据库。我想要并得到结果。我甚至为此安装了elastica。但是我没有从这个代码中得到任何结果:运行elasticsearch查询的php代码,php,
elasticsearch,elastica,Php,
elasticsearch,Elastica,我是elasticsearch的新手。我想用elasticsearch搜索mysql数据库。我想要并得到结果。我甚至为此安装了elastica。但是我没有从这个代码中得到任何结果: <?php require_once '/home/babloo/vendor/autoload.php'; $client = new Elastica_Client(); $index = $client->getIndex('jdbc'); $index->getType('jdbc');
<?php
require_once '/home/babloo/vendor/autoload.php';
$client = new Elastica_Client();
$index = $client->getIndex('jdbc');
$index->getType('jdbc');
$query_string = new Elastica_Query_QueryString('ashish');
$query_string->setFields(array('name'));
$query = new Elastica_Query($query_string);
$index->refresh();
$searchResults = $index->search($query);
?>
哪里出了问题?改进语法并遵循以下步骤: 1不设置错误报告
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
session_start();
2需要“vendor/autoload.php”;使用composer安装
3创建对象
$client = new Elasticsearch\Client();
$elasticaClient = new Elastica\Client();
$reque=new Elastica\Request($elasticaClient);
4程序示例
$index = $elasticaClient->getIndex('test');
$index->create(array(), true);
$type = $index->getType('test');
$type->addDocument(new Elastica\Document(1, array('username' => 'ruflin')));
$index->refresh();
$query = array(
'query' => array(
'query_string' => array(
'query' => 'ruflin',
)
)
);
//$typee =$reque->GET;
$path = $index->getName() . '/' . $type->getName() . '/_search';
$response = $elasticaClient->request($path, $reque::GET, $query);
$responseArray = $response->getData();
echo "<pre>";
print_r($responseArray);
参考链接
创作者
b
H我看不到你在连接数据库,这是在舞台外的某个地方完成的吗?@DevZer0:不。。。怎么办?我不知道我自己,我检查了文件,它很生锈。我现在正在下载elastica,如果我有机会查看,我会回复你。你不能使用elasticsearch搜索mySQL数据库。把它想象成另一个数据库,但它是用来搜索的。您需要首先将数据从mySQL导入elasticsearch,然后将查询发送到elasticsearch服务器。在搜索导入数据的方法时,我建议首先使用命令行cURL语句。