Tous les produits
Search
Centre de documentation

Alibaba Cloud SDK:Intégration du SDK

Dernière mise à jour :Aug 11, 2026

Le SDK Alibaba Cloud simplifie le développement, accélère l'intégration des fonctionnalités et réduit les coûts d'exploitation et de maintenance. Intégrez le SDK Alibaba Cloud V1.0 pour PHP à votre projet pour commencer à appeler des opérations d'API.

Configuration requise

PHP >= 5,5

Installation du SDK

L'installation du SDK Alibaba Cloud V1.0 pour PHP inclut automatiquement la bibliothèque principale. Vous devez uniquement installer le SDK du produit cloud concerné.

SDK du produit cloud

Le SDK V1.0 d'un service Alibaba Cloud fournit les objets de requête et de réponse des opérations d'API, ainsi que l'objet Unmarshaller pour sérialiser les valeurs de retour. L'exemple suivant ajoute le SDK ECS V1.0 comme dépendance :

# ECS V1.0 SDK
composer require alibabacloud/ecs

Les SDK V1.0 suivent la convention de nommage alibabacloud/${product_name}. Consultez également le SDK Center pour obtenir des informations sur le SDK V1.0 d'un produit spécifique.

SDK principal

La bibliothèque principale contient l'objet client, la logique de signature et la gestion des erreurs nécessaires aux appels d'API. Pour réaliser des appels génériques ou installer une version spécifique de cette bibliothèque, exécutez la commande suivante :

composer require alibabacloud/client

Pour plus d'informations sur la dernière version, consultez alibabacloud/client - Packagist.

Utilisation du SDK

L'exemple ci-dessous utilise le SDK Alibaba Cloud V1.0 pour appeler l'opération ECS DescribeInstances.

1. Initialiser un client de requête

Toutes les opérations d'API s'effectuent via l'objet Client de la bibliothèque principale. Avant tout appel d'API, initialisez un client de requête. Cet exemple utilise une paire d'AccessKey pour l'initialisation. Pour plus d'informations, consultez Manage access credentials.

Remarque

Cet exemple lit les identifiants depuis les variables d'environnement. Avant d'exécuter le code, configurez les variables d'environnement ALIBABA_CLOUD_ACCESS_KEY_ID et ALIBABA_CLOUD_ACCESS_KEY_SECRET. Pour plus d'informations, consultez Configure environment variables on Linux, macOS, and Windows.

use AlibabaCloud\Client\AlibabaCloud;

// Please ensure that the environment variables ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET are set.
AlibabaCloud::accessKeyClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'))
            ->regionId('<REGION_ID>')
            ->asDefaultClient();

2. Créer un objet de requête

Utilisez l'objet de requête fourni par le SDK pour encapsuler les paramètres.

use AlibabaCloud\Ecs\Ecs;

// Build the request parameters.    
$request = Ecs::v20140526()
    ->describeInstances() // Create a request object for the API operation.
    ->withInstanceIds(json_encode(["i-bp1dXXXXXXXXXXXX"])) // The InstanceIds request parameter. Specify the ID of your instance.
    ->withPageSize(10) // The PageSize request parameter. Specify the number of entries that you want to obtain.
    ->withPageNumber(1); // The PageNumber request parameter. Specify the number of the page that you want to obtain.

3. Envoyer une requête API

Appelez la fonction request() pour envoyer la requête.

$result = $request
    ->debug(true) // Output details. If this field is set to false, details are not output.
    ->request(); // Execute the request.
print_r($result->toArray()); // Print the response to the API request.

4. Gérer les erreurs

Si une erreur survient lors d'un appel d'API, capturez les exceptions ServerException et ClientException pour obtenir le message d'erreur.

Complete sample code

<?php
use AlibabaCloud\Client\AlibabaCloud;
use AlibabaCloud\Client\Exception\ClientException;
use AlibabaCloud\Client\Exception\ServerException;
use AlibabaCloud\Ecs\Ecs;

require_once 'vendor/autoload.php';

try {
    // Obtain the ALIBABA_CLOUD_ACCESS_KEY_ID and ALIBABA_CLOUD_ACCESS_KEY_SECRET of the RAM user from environment variables.
    AlibabaCloud::accessKeyClient(getenv('ALIBABA_CLOUD_ACCESS_KEY_ID'), getenv('ALIBABA_CLOUD_ACCESS_KEY_SECRET'))
        ->regionId('cn-hangzhou') // The region ID. This example uses cn-hangzhou.
        ->asDefaultClient();

    // Construct the request parameters.
    $request = Ecs::v20140526()
        ->describeInstances()
        ->withInstanceIds(json_encode(["i-bp1dXXXXXXXXXXXX"]))
        ->withPageSize(10)
        ->withPageNumber(1);

    $result = $request
        ->debug(true)
        ->request();
    print_r($result->toArray());
} catch (ClientException $exception) {
    # This is for demonstration only. Handle exceptions with caution and do not ignore them in your project.
    echo $exception->getMessage() . PHP_EOL;
} catch (ServerException $exception) {
    # This is for demonstration only. Handle exceptions with caution and do not ignore them in your project.
    echo $exception->getMessage() . PHP_EOL;
    echo $exception->getErrorCode() . PHP_EOL;
    echo $exception->getRequestId() . PHP_EOL;
    echo $exception->getErrorMessage() . PHP_EOL;
}

Références