Alibaba Cloud PHP 客户端 - 在您的 PHP 项目中使用阿里云

1.5.32 2022-12-09 04:05 UTC

README

英文 | 简体中文

Alibaba Cloud PHP 客户端

Latest Stable Version composer.lock Total Downloads License codecov PHP Version Require

Alibaba Cloud PHP 客户端是一款帮助 PHP 开发者管理凭证和发送请求的工具,它是 Alibaba Cloud SDK for PHP 依赖的工具。

故障排除

故障排除 提供OpenAPI诊断服务,帮助开发者快速定位问题并通过 RequestID错误信息 提供解决方案。

在线演示

阿里云 OpenAPI 开发者门户 提供了在线调用云产品 OpenAPI 的能力,并动态生成 SDK 示例代码和快速检索接口,可以显著降低使用云 API 的难度。

先决条件

您的系统需要满足 先决条件,包括 PHP >= 5.5。我们强烈建议使用带有 cURL 扩展和 cURL 7.16.2+ 的 PHP 编译。

安装

如果 Composer 已经在您的系统上全局安装,请在项目的根目录中运行以下命令以将 Alibaba Cloud Client for PHP 作为依赖项安装

composer require alibabacloud/client

由于网络问题,某些用户可能无法安装,您可以尝试切换 Composer 镜像。

有关通过 Composer 和其他方式安装 Alibaba Cloud Client for PHP 的更多信息,请参阅 安装

快速示例

在开始之前,您需要注册一个阿里云账户并获取您的 凭证

创建客户端

<?php

use AlibabaCloud\Client\AlibabaCloud;

AlibabaCloud::accessKeyClient('accessKeyId', 'accessKeySecret')->asDefaultClient();

请求

请求样式分为 ROARPC。不同的产品样式不同。在使用前请参阅产品文档。建议使用 Alibaba Cloud SDK for PHP,其细节已封装,您无需关心样式。

ROA 请求

<?php

use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;

try {
    $result = AlibabaCloud::roa()
                          ->regionId('cn-hangzhou') // Specify the requested regionId, if not specified, use the client regionId, then default regionId
                          ->product('CS') // Specify product
                          ->version('2015-12-15') // Specify product version
                          ->action('DescribeClusterServices') // Specify product interface
                          ->serviceCode('cs') // Set ServiceCode for addressing, optional
                          ->endpointType('openAPI') // Set type, optional
                          ->method('GET') // Set request method
                          ->host('cs.aliyun.com') // Location Service will not be enabled if the host is specified. For example, service with a Certification type-Bearer Token should be specified
                          ->pathPattern('/clusters/[ClusterId]/services') // Specify path rule with ROA-style
                          ->withClusterId('123456') // Assign values to parameters in the path. Method: with + Parameter
                          ->request(); // Make a request and return to result object. The request is to be placed at the end of the setting
                          
    print_r($result->toArray());
    
} catch (ClientException $exception) {
    print_r($exception->getErrorMessage());
} catch (ServerException $exception) {
    print_r($exception->getErrorMessage());
}

RPC 请求

<?php

use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;

try {
    $result = AlibabaCloud::rpc()
                          ->product('Cdn')
                          ->version('2014-11-11')
                          ->action('DescribeCdnService')
                          ->method('POST')
                          ->request();
    
    print_r($result->toArray());
    
} catch (ClientException $exception) {
    print_r($exception->getErrorMessage());
} catch (ServerException $exception) {
    print_r($exception->getErrorMessage());
}

文档

问题

提交问题,不符合指南的问题可能会立即关闭。

变更日志

每个版本的具体变更记录在 发布说明 中。

贡献

在提交拉取请求之前,请务必阅读 贡献指南

参考

许可证

Apache-2.0

版权所有 (c) 2009-至今,阿里巴巴集团。保留所有权利。