Alibaba Cloud SDK for PHP - 在您的PHP项目中更容易使用阿里云

1.8.2190 2024-09-18 06:16 UTC

This package is auto-updated.

Last update: 2024-09-18 06:16:36 UTC


README

英文 | 简体中文

Alibaba Cloud SDK for PHP

Latest Stable Version composer.lock Total Downloads License codecov Travis Build Status Appveyor Build Status

AlibabaCloud

Alibaba Cloud SDK for PHP 是一个支持快速访问产品、依赖于 Alibaba Cloud Client for PHP 的开发套件。

发布说明

我们基于 消除已知问题兼容旧语法 的原则,添加了以下功能

先决条件

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

安装

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

composer require alibabacloud/sdk

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

故障排除

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

在线演示

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

快速示例

在开始之前,您需要注册一个阿里云账户并获取您的 凭证。在请求之前,请 了解客户端,请求后,请 了解结果

目前,仅支持一些阿里云产品,支持的产品。对于不支持的产品,您可以使用 Alibaba Cloud Client for PHP 发起自定义请求,并可以使用 Alibaba Cloud OpenAPI开发者门户 在线生成Alibaba Cloud Client for PHP代码。

<?php

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

// Set up a global client
AlibabaCloud::accessKeyClient('foo', 'bar')
            ->regionId('cn-hangzhou')
            ->asDefaultClient();

try {
    // Access product APIs
    $request = Ecs::v20140526()->describeRegions();
    
    // Set options/parameters and execute request
    $result = $request->withResourceType('type') // API parameter
                      ->withInstanceChargeType('type') // API parameter
                      ->client('client1') // Specify the client for send
                      ->debug(true) // Enable the debug will output detailed information
                      ->connectTimeout(0.01) // Throw an exception when Connection timeout 
                      ->timeout(0.01) // Throw an exception when timeout 
                      ->request(); // Execution request

    // Can also Set by passing in an array
    $options = [
                   'debug'           => true,
                   'connect_timeout' => 0.01,
                   'timeout'         => 0.01,
                   'query'           => [
                       'ResourceType' => 'type',
                       'InstanceChargeType' => 'type',
                   ],
               ];
    
    // Settings priority
    $result2 = Ecs::v20140526()
                  ->describeRegions($options)
                  ->options([
                                'query' => [
                                    'Key'      => 'I will overwrite this value in constructor',
                                    'new'      => 'I am new value',
                                ],
                            ])
                  ->options([
                                'query' => [
                                    'Key' => 'I will overwrite the previous value',
                                    'bar' => 'I am new value',
                                ],
                            ])
                  ->debug(false) // Overwrite the true of the former
                  ->request();
    
} 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;
}

问题

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

变更日志

每个版本的详细更改记录在 发布说明 中。

贡献

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

参考文献

许可证

Apache-2.0

版权所有(c)2009-现在,阿里云保留所有权利。