安装
Elasticsearch-php 只有四个要求您需要担心的:
其余的依赖项将由 Composer 自动下载安装。 Composer 是 PHP 的包和依赖项管理器。通过 Composer 安装 elasticsearch-php 非常简单
注意:Libcurl 是可以被替换的。Elasticsearch-php 附带的默认 HTTP 处理程序需要 PHP libcurl 扩展 ,但是从技术层面来说,客户端无需操作。如果您的主机没有安装 libcurl 扩展,则可以使用基于 PHP 流的备用 HTTP 处理程序。性能 将会受到影响,因为 libcurl 扩展速度要快得多。
版本矩阵
你需要将你的 Elasticsearch 版本与此库的相应版本相匹配。
master 分支将始终跟踪 Elasticsearch 的 master,但不建议在生产代码中使用 dev-master
。
Elasticsearch 版本 | Elasticsearch-PHP 分支 |
---|---|
>= 6.0 | 6.0 |
>= 5.0, ⇐ 6.0 | 5.0 |
>= 1.0, ⇐ 5.0 | 1.0 , 2.0 |
⇐ 0.90.* | 0.4 |
Composer 安装
- 请在你的
composer.json
文件中添加 elasticsearch-php。 如果你要开始一个新项目,只需将以下 JSON 代码段粘贴到名为composer.json
的新文件中即可。 如果你有现有项目,请在已存在的其他要求下包含此要求:
{
"require": {
"elasticsearch/elasticsearch": "~6.0"
}
}
- 使用 composer 安装客户端。第一个命令是下载
composer.phar
PHP归档文件,第二条命令是执行安装客户端。Composer 会自动下载任何所需的依赖,并将它们保存在/vendor/
目录中,并会生成一个自动加载器:
curl -s http://getcomposer.org/installer | php
php composer.phar install --no-dev
详情请看 Composer 官方文档。
- 接下来,将生成的自动加载器放在你的项目中。如果你的项目是基于 Composer,自动加载器可能已经存在,你不需要添加。最后,实例化一个新的客户端:
require 'vendor/autoload.php';
$client = Elasticsearch\ClientBuilder::create()->build();
使用静态辅助方法 create()
可以实例化客户端。这会创建一个 ClientBuilder 对象,该对象可帮助你设置自定义配置。当你已经配置过相应配置,你可以调用 build()
方法生成一个 Client
对象。我们将会在配置章节讨论更多的配置项。
–no-dev 选项
你将会注意到安装命令的 --no-dev
选项。它会阻止 Composer 安装各种测试和开发 Elasticsearch 时所需的依赖。对大多数用户来说,是不需要安装这些依赖的。尤其是,开发依赖包括对 REST 规范测试的 Elasticsearch 的完整副本。这对于非 Elasticsearch 开发者来说,会下载一个很大的文件,因此需要添加 --no-dev
选项。
如果你想为 Elasticsearch 开发做贡献,只需要忽略 --no-dev
选项就可以运行测试。