Some AWS operations return truncated results that require subsequent requests in order to retrieve the entire result set. The subsequent requests typically require pagination tokens or markers from the previous request in order to retrieve the next set of results. Working with these tokens can be cumbersome, since you must manually keep track of them, and the API for each service you are using may differ in the names and details of the tokens. The AWS SDK for PHP has a feature called **Iterators** that allow you to retrieve an *entire* result set without manually handling pagination tokens or markers. The Iterators in the SDK implement PHP's ``Iterator`` interface, which allows you to easily enumerate or iterate through resources from a result set with ``foreach``. Operations that start with ``List`` or ``Describe``, or any other operations that are designed to return multiple records can be used with Iterators. To use an Iterator, you must call the ``getIterator()`` method of the client and provide the operation name. The following is an example of creating an Amazon S3 ``ListObjects`` Iterator, to iterate over objects in a bucket. .. code-block:: php $iterator = $client->getIterator('ListObjects', array('Bucket' => 'my-bucket')); foreach ($iterator as $object) { echo $object['Key'] . "\n"; }