php
  • curl
  • elasticsearch
  • 2014-03-26 62 views 0 likes 
    0

    我是一個非常初學者的彈性搜索。
    我想使用curl彈性搜索使用PHP不工作

    curl -XPUT "http://localhost:9200/movies/movie/1" -d' 
    { 
        "title": "The Godfather", 
        "year": 1972 
    }' 
    

    在PHP中創建一個節點,而無需使用任何開源像彈性彎曲我要實現上述捲曲,
    我想這 -

    <? 
    $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或任何其他。

    回答

    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); 
    
    +0

    非常感謝它的工作。 –

    +0

    刪除CURLOPT_POST的回聲並用curl_setopt($ ch,CURLOPT_CUSTOMREQUEST,'PUT')替換它;使它爲我工作 –

    相關問題