本文为您介绍PHP SDK的安装方法,并提供了示例代码。

前提条件

  • 已经注册阿里云账号并生成访问密钥(AccessKey)。详细步骤请参见获取AccessKey
  • 您需要开通号码隐私保护并完成购买号码等操作。具体流程,请参见入门概览
  • 已安装PHP。Alibaba Cloud SDK for PHP适用于PHP 5.5.0或更高版本。 您可以通过php -v命令查看当前使用的PHP版本号。
说明 建议使用cURL扩展,并使用TLS后端编译cURL 7.16.2+。

安装步骤

请参考以下步骤,使用Composer安装依赖。

如果在您的系统上全局安装Composer,您可以在项目目录中运行以下内容,将 Alibaba Cloud Client for PHP 添加为依赖项。
composer require alibabacloud/client

通过 Composer 和其他方式安装的详细信息,请参见安装说明

在安装完成后,您可以使用OpenAPI Explorer来生成相关API的Demo,并应用在您的项目中。如需了解更多,请参见安装及使用指南

添加AXB号码的绑定关系

下面为您提供号码隐私保护API BindAxb的PHP SDK示例代码。关于其他API,请访问OpenAPI开发者门户调试并获取示例代码。

说明 调用接口前需配置环境变量,通过环境变量读取访问凭证。

AccessKey ID和AccessKey Secret的环境变量名:SECRET_AK_ENV 、SECRET_SK_ENV。配置详情请参见配置访问凭证

代码示例
<?php
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;
use AlibabaCloud\Dyplsapi\Dyplsapi;

// Download:https://github.com/aliyun/openapi-sdk-php
// Usage:https://github.com/aliyun/openapi-sdk-php

// 阿里云账号AccessKey拥有所有API的访问权限,建议您使用RAM用户进行API访问或日常运维。
// 强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
// 本示例以把AccessKey ID和AccessKey Secret保存在环境变量为例说明,来实现API访问的身份验证。
AlibabaCloud::accessKeyClient(getenv("SECRET_AK_ENV"), getenv("SECRET_SK_ENV"))
// use STS Token
// AlibabaCloud::stsClient(getenv("SECRET_AK_ENV"), getenv("SECRET_SK_ENV"), '<your-sts-token>')
    ->regionId('cn-shanghai')
    ->asDefaultClient();

try {
    $request = Dyplsapi::v20170525()->bindAxb();
    $result = $request
        ->withPoolKey("FC5526*****")
        ->withPhoneNoA("150****0000")
        ->withPhoneNoB("150****0000")
        ->withPhoneNoX("150****0000")
        ->withExpiration("2021-09-05 12:00:00")
        ->withIsRecordingEnabled(true)
        ->withExpectCity("北京")
        ->withOutId("abcdef")
        ->withOutOrderId("34553330****")
        ->withCallRestrict("CONTROL_AX_DISABLE")
        ->withCallDisplayType(1)
        ->withRingConfig("{\"AXBRing_B\":\"100000001\",\"AXBRing_A\":\"100000001\"}")
        ->withASRModelId("7ee372834d2f4cc7ac0d0ab****")
        ->withCallTimeout(10)
        ->debug(true) // Enable the debug will output detailed information
        ->connectTimeout(1) // Throw an exception when Connection timeout
        ->timeout(1) // Throw an exception when timeout 
        ->request();
    print_r($result->toArray());
} catch (ClientException $exception) {
    echo $exception->getMessage() . PHP_EOL;
} catch (ServerException $exception) {
    echo $exception->getMessage() . PHP_EOL;
    echo $exception->getErrorCode() . PHP_EOL;
    echo $exception->getRequestId() . PHP_EOL;
    echo $exception->getErrorMessage() . PHP_EOL;
}

PHP SDK GitHub地址

PHP SDK核心库

相关文档

  • 如果您想了解更多示例,请参见OpenAPI开发者门户
    说明 登录开发者门户平台,SDK版本选择时,请选择原版 SDK
  • 号码隐私保护相关API,请参见API概览