$word = $_GET['search'];
$json = json_encode('{"query":{"match":{"name":"'.$word.'"}}}');
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://10.128.0.2:9200/testers/test/_search' . urlencode($json));
$resp = curl_exec($curl);
从网址填写$ word,这是正常的。 $ resp没有带回任何价值。 'name'是elasticsearch字段的名称。
我正在使用PHP来运行此curl请求as per elasticserch,除了一个URL中的所有内容。有没有更好的方法从PHP代码执行此操作?
答案 0 :(得分:2)
如果您正在使用GET调用,则需要在source
查询字符串参数中传递查询:
curl_setopt($curl, CURLOPT_URL, 'http://10.128.0.2:9200/testers/test/_search?source=' . urlencode($json));