Alibaba Cloud PHP SDK (Software Development Kit) を使用すると、 ECS (Elastic Compute Service) 、 SLB (Server Load Balancer) 、 CloudMonitor などの Alibaba Cloud サービスにアクセスできます。 リクエストの署名や作成などの API 関連のタスクを処理せず、 Alibaba Cloud サービスにアクセスできます。 ここでは Alibaba Cloud PHP SDK を入手して呼び出す方法を紹介します。 PHP SDK の使用中に問題が発生した場合は、 DingTalkグループ:11771185( Alibaba Cloud の公式 SDK カスタマーサービスグループ)にご相談ください。

環境の準備

  • Alibaba Cloud PHP SDKを使用するには、 Alibaba Cloud アカウントと AccessKey が必要です。 AccessKey は AcsClient を初期化するときに必要です。 Alibaba Cloud コンソール の AccessKey コンソール に AccessKey を作成することができます。
  • Alibaba Cloud PHP SDK を使用して製品 API にアクセスするには、必要に応じて Alibaba Cloud コンソールでまず製品をアクティブにする必要があります。
  • Alibaba Cloud PHP SDK には、 PHP バージョン 5.3 、 5.4 、 5.5 、 5.6 、 7.0 、または 7.1 が必要です。 php -v コマンドを使用して、現行の PHP バージョンを取得することができます。

PHP SDK のインストール

PHP SDK をインストールするために次の手順を実行します。
  1. 次のコマンドを実行して複製します PHP SDK のソースコード
    git clone https://github.com/aliyun/aliyun-openapi-php-sdk.git
  2. コードに PHP SDK の参照を追加します。
    たとえば、 PHP SDKの複製ディレクトリは /path/to/aliyun-openapi-php-sdk で、次のコードを追加して参照を追加します。
    Quire_once '/path/to/aliyun-openapi-PHP-SDK/aliyun-PHP-SDK -Core/config. PHP ';

PHP SDK の使用

次のコードは、 Alibaba Cloud PHP SDK を使用するための3つの主な手順を示しています。

  1. DefaultAcsClient インスタンスを作成して開始します。

    DefaultAcsClient インスタンスを作成および初期化するときには、 Region IDAccessKey IDAccessKey Secret の値を指定する必要があります。

  2. API リクエストを作成してパラメータを設定します。
  3. リクエストを開始してレスポンスを処理します。
    <? php
    
    use Ecs\Request\V20140526\DescribeInstancesRequest;
    
    // DefaultAcsClient インスタンスを作成して初期化します
    $clientProfile = DefaultProfile::getProfile(
        "<Your-region-ID>", # リージョン ID 
        "<your-access-key-id>", # AccessKey ID
        "<your-access-key-secret>" # AccessKey Secret
    
    $client = new DefaultAcsClient($clientProfile);
    
    # API リクエストを作成してパラメータを設定します
    $request = new DescribeInstancesRequest();
    $request->setPageSize(10);
    
    # リクエストを開始してレスポンスを処理します
    try {
        $response = $client->getAcsResponse($request);
        print_r($response);
    } catch(ServerException $e) {
        print "Error: " . $e->getErrorCode() . " Message: " . $e->getMessage() . "\n";
    } catch(ClientException $e) {
        print "Error: " . $e->getErrorCode() . " Message: " . $e->getMessage() . "\n";