在新的PHP AWS SDK(^ 3)中替换getDescribeInstancesIterator?

时间:2016-12-11 14:01:18

标签: php amazon-web-services amazon-ec2 aws-sdk aws-php-sdk

在以前版本的AWS开发工具包中,有许多方便的函数,如getDescribeInstancesIterator,它们会返回结果的数组迭代器(在本例中是与过滤器匹配的实例数组)。

在新的AWS开发工具包中,此功能(及类似功能)已被删除。经过一些研究后,我发现getIterator($name, array $args = [])函数被定义为AwsClientTrait

我不确定如何使用这个新的getIterator函数来替换getDescribeInstancesIterator函数,即获取一个返回匹配实例列表的describeInstances函数的数组迭代器像以前一样(不必担心分页等)?

任何代码示例都非常有用。

1 个答案:

答案 0 :(得分:0)

终于明白了。新语法就像这样

$ec2Client->getIterator('FunctionName', 'Values')

所以getDescribeInstancesIterator现在变为:

$ec2Client->getIterator('DescribeInstances', [...'Filters'])

此语法对于所有操作都是相同的,包括迭代存储桶中的文件,获取正在运行的实例等等。