gpt4 book ai didi

PHP AWS DynamoDB : Limit the Number of Total Query Results Using an Iterator

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:46:21 31 4
gpt4 key购买 nike

我正在尝试将迭代器返回的结果总数限制为 3。而不是每次迭代的结果数。我希望使这个数字动态化。但是,我找不到任何真正的答案来完成这个,而且 AWS 提供的文档也没有帮助。将 Limit 与表名和键放在数组中不会限制结果。我也把它放在它自己的单独数组中,但这也不起作用。以下是我尝试过的方法,但我无法使其正常工作。任何帮助将不胜感激。

$iterator = $dbh->getIterator('Query', array(
'TableName' => 'raw',
'KeyConditions' => array(
'deviceID' => array(
'AttributeValueList' => array(
array('S' => $deviceID)
),
'ComparisonOperator' => 'EQ'
)
),
'ScanIndexForward' => false // true = ascending, false = descending
),
array(
'Limit' => 3
)
);

然后将结果数据放入一个数组中。我不知道我是否需要在这里做一些不同的事情?

foreach ($iterator as $item) {
array_push($resultArray, $item);
}

最佳答案

从表面上看,您可能已经尝试过了,但请尝试使用小写的“limit”编写代码。

 $iterator = $dbh->getIterator('Query', array(
'TableName' => 'raw',
'KeyConditions' => array(
'deviceID' => array(
'AttributeValueList' => array(
array('S' => $deviceID)
),
'ComparisonOperator' => 'EQ'
)
),
'ScanIndexForward' => false // true = ascending, false = descending
),
array(
'limit' => 3
)
);

您也可以尝试通过以下方式进行限制。

foreach (new LimitIterator($iterator, 0, 3) as $item) {
array_push($resultArray, $item);
}

关于PHP AWS DynamoDB : Limit the Number of Total Query Results Using an Iterator,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48514056/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com