使用PHP的弹性搜索不起作用

时间:2014-03-26 18:50:00

标签: php curl elasticsearch

我是弹性搜索的初学者 我想使用Curl

在php中创建一个节点
curl -XPUT "http://localhost:9200/movies/movie/1" -d'
{
    "title": "The Godfather",
    "year": 1972
}'

没有使用像elastica这样的开源我想实现上面的CURL,
我试过了 -

<?
$url='curl -XPUT "http://localhost:9200/movies/movie/1" -d\' { "title": "The Godfather","year": 1972}\'';

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 0);
ob_start();
curl_exec ($ch);
curl_close ($ch);
$data = ob_get_contents();
ob_end_clean();
var_dump($data);
?>


但它既没有给出任何输出,也没有创建节点。有什么问题?
初次使用我想要最简单的php。我不想使用elastica或任何其他。

1 个答案:

答案 0 :(得分:2)

这是您的等效卷曲代码:

$url='http://localhost:9200/movies/movie/1';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, '{"title": "The Godfather","year": 1972}');
curl_setopt($ch, CURLOPT_HTTPHEADER,array("Content-Type: appliaction/json"));
$result = curl_exec($ch);
curl_close($ch);