benjaminhirsch/php-azure-search

该包已废弃且不再维护。没有建议的替代包。

一个简单的PHP类,用于与Microsoft Azure Search REST API通信

0.9.2 2018-10-27 17:00 UTC

This package is auto-updated.

Last update: 2023-02-02 18:51:28 UTC


README

Microsoft Azure Search Service for php

Latest Stable Version Build Status Build Status Coverage Status License

benjaminhirsch/php-azure-search是一个简单的PHP工具箱,用于与Microsoft Azure Search服务的REST API交互。

功能

  • 创建、更新和删除索引,包括建议器和corsOptions
  • 创建、更新和删除所有类型的字段,包括集合
  • 列出索引
  • 获取索引统计信息
  • 添加、更新和删除文档
  • 搜索文档
  • 获取实时建议
  • 计数文档

即将推出的功能

  • 添加评分配置文件

安装

开始的最简单方法是使用composer安装benjaminhirsch/php-azure-search

$ composer require benjaminhirsch/php-azure-search

初始化

您可以在Microsoft Azure门户的"搜索服务"下找到您的凭据$azure_url$azure_admin_key$azure_version

$azuresearch = new BenjaminHirsch\Azure\Search\Service(azure_url, azure_admin_key, azure_version);

创建索引

首先,您必须创建一个索引BenjaminHirsch\Azure\Search\Index,其中您将存储您的文档。您的索引可以包含您想要的任何数量的字段。添加建议器是可选的,但如果您想使用实时搜索(建议),则建议添加。

$index = new BenjaminHirsch\Azure\Search\Index('name of your index');
$index->addField(new BenjaminHirsch\Azure\Search\Index\Field('field name 1', BenjaminHirsch\Azure\Search\Index\Field::TYPE_STRING, true))
       ->addField(new BenjaminHirsch\Azure\Search\Index\Field('field name 2', BenjaminHirsch\Azure\Search\Index\Field::TYPE_STRING))
       ->addSuggesters(new BenjaminHirsch\Azure\Search\Index\Suggest('livesearch', ['field name(s)']));

$azuresearch->createIndex($index);

删除索引

从Azure中删除完整索引。删除索引还会删除索引中存储的文档。

$azuresearch->deleteIndex('name of the index to delete');

上传文档

在您创建索引后,您就可以填充索引了。每个请求的最大数组大小(1000)。

$data['value'][] = [
    '@search.action' => BenjaminHirsch\Azure\Search\Index::ACTION_UPLOAD,
    'field name 1' => <your value for field name 1>,
    'field name 2' => <your value for field name 2>
];

$azuresearch->uploadToIndex('name of your index', $data);

实时搜索(建议)

$azuresearch->suggestions('name of your index', 'your term', 'livesearch')

搜索文档

$azuresearch->search('name of your index', 'your term');