

# Using regions and availability zones for Amazon EC2 with Amazon SDK for PHP Version 3
<a name="ec2-examples-using-regions-and-zones"></a>

Amazon EC2 is hosted in multiple locations worldwide. These locations are composed of Amazon Regions and Availability Zones. Each Region is a separate geographic area, with multiple isolated locations known as Availability Zones. Amazon EC2 provides the ability to place instances and data in multiple locations.

The following examples show how to:
+ Describe the Availability Zones that are available to you using [DescribeAvailabilityZones](https://docs.amazonaws.cn/aws-sdk-php/v3/api/api-ec2-2016-11-15.html#describeavailabilityzones).
+ Describe Amazon Regions that are currently available to you using [DescribeRegions](https://docs.amazonaws.cn/aws-sdk-php/v3/api/api-ec2-2016-11-15.html#describeregions).

All the example code for the Amazon SDK for PHP is available [here on GitHub](https://github.com/awsdocs/aws-doc-sdk-examples/tree/main/php/example_code).

## Credentials
<a name="examplecredentials"></a>

Before running the example code, configure your Amazon credentials, as described in [Authenticating with Amazon using Amazon SDK for PHP Version 3](credentials.md). Then import the Amazon SDK for PHP, as described in [Installing the Amazon SDK for PHP Version 3](getting-started_installation.md).

## Describe availability zones
<a name="describe-availability-zones"></a>

 **Imports** 

```
require 'vendor/autoload.php';
```

 **Sample Code** 

```
$ec2Client = new Aws\Ec2\Ec2Client([
    'region' => 'us-west-2',
    'version' => '2016-11-15',
    'profile' => 'default'
]);

$result = $ec2Client->describeAvailabilityZones();

var_dump($result);
```

## Describe regions
<a name="describe-regions"></a>

 **Imports** 

```
require 'vendor/autoload.php';
```

 **Sample Code** 

```
$ec2Client = new Aws\Ec2\Ec2Client([
    'region' => 'us-west-2',
    'version' => '2016-11-15',
    'profile' => 'default'
]);

$result = $ec2Client->describeRegions();

var_dump($result);
```