在将elasticsearch-php从1.3.1更新为1.3.2之前,以下代码有效:
$client = new Elasticsearch\Client();
// Index Settings
$indexParams['index'] = 'address';
// Example Index Mapping
$myTypeMapping = array(
'_source' => array(
'enabled' => true
),
'properties' => array(
'post_code' => array(
'type' => 'string',
'index' => 'not_analyzed'
)
)
);
$indexParams['body']['mappings']['postcode'] = $myTypeMapping;
// Create the index
$client->indices()->create($indexParams);
错误如下:
致命错误:未捕获的异常 '狂饮\ HTTP \异常\ ClientErrorResponseException'与消息 '客户端错误响应[状态代码] 400 [原因短语]错误请求 [url] http://localhost:9200/address'在 C:\ XAMPP \ htdocs中\ locatr \厂商\狂饮\ HTTP \狂饮\ HTTP \异常\ BadResponseException.php:43 堆栈跟踪:#0 C:\ XAMPP \ htdocs中\ locatr \厂商\狂饮\ HTTP \狂饮\ HTTP \消息\ Request.php(145): 狂饮\ HTTP \异常\ BadResponseException ::工厂(对象(狂饮\ HTTP \消息\ EntityEnclosingRequest), 对象(Guzzle \ Http \ Message \ Response))#1 [内部函数]: 狂饮\ HTTP \信息\支持:: onRequestError(对象(狂饮\ COMMON \事件), ' request.error&#39 ;, 对象(Symfony \ Component \ EventDispatcher \ EventDispatcher))#2 C:\ XAMPP \ htdocs中\ locatr \厂商\ symfony的\事件调度\的Symfony \元器件\此事件\ EventDispatcher.php(164): call_user_func(Array,Object(Guzzle \ Common \ Event),' request.error', 对象(Symfony \ Component \ EventDispatcher \ EventDispatcher))#3 C:\ XAMPP \ htdocs中\ locatr \厂商\ symfony的\事件调度\的Symfony \元器件\伊芙 在 C:\ XAMPP \ htdocs中\ locatr \厂商\ elasticsearch \ elasticsearch \ SRC \ Elasticsearch \连接\ GuzzleConnection.php 在第266行
这些版本之间是否有任何会破坏代码的更改?据我所知,文档中没有任何内容。
或者代码示例是否存在问题?还是更有可能的其他东西?