在 PHP (AWS/ResulData) 中访问多维关联数组时出错
Error while accessing multi-dimensional associative array in PHP (AWS/ResulData)
我一直在尝试使用 PHP 通过 AWS Rekognition 实施名人识别。我能够使用
获得 ResultData
$result = $client->recognizeCelebrities();
然后我使用
将 $result 转换为数组
$postResult = (array) $result;
我尝试使用
打印数组 $postResult
echo '<pre>';
print_r($postResult);
echo '</pre>';
它打印了类似的东西,
Array
(
[Aws\Resultdata] => Array
(
[CelebrityFaces] => Array
(
[0] => Array
(
[Name] => Emily Blunt
)
)
)
)
我只想打印值 'Name'。所以我用了,
echo $postResult['Aws\Resultdata']['CelebrityFaces'][0]['Name'];
但它抛出一个错误,未定义的索引:Aws\Resultdata
我也试过使用 foreach 循环,但它导致了同样的错误
foreach ($postResult as $array) {
echo $array['Name'];
}
这是 $result 的输出,
Aws\Result Object
(
[data:Aws\Result:private] => Array
(
[CelebrityFaces] => Array
(
[0] => Array
(
[Name] => Emily Blunt
)
)
)
)
几天前我才开始使用 PHP,所以我只是个初学者。我也试着搜索一个特定的答案,但它总是抛出同样的错误。
如有任何帮助,我们将不胜感激!
$result
是classAws\Result
的对象。根据 this documentation 以下应该有效:
$celebFaces = $result->get('CelebrityFaces');
foreach($celebFaces as $face) {
echo $face['Name'];
}
我一直在尝试使用 PHP 通过 AWS Rekognition 实施名人识别。我能够使用
获得 ResultData$result = $client->recognizeCelebrities();
然后我使用
将 $result 转换为数组$postResult = (array) $result;
我尝试使用
打印数组 $postResultecho '<pre>';
print_r($postResult);
echo '</pre>';
它打印了类似的东西,
Array
(
[Aws\Resultdata] => Array
(
[CelebrityFaces] => Array
(
[0] => Array
(
[Name] => Emily Blunt
)
)
)
)
我只想打印值 'Name'。所以我用了,
echo $postResult['Aws\Resultdata']['CelebrityFaces'][0]['Name'];
但它抛出一个错误,未定义的索引:Aws\Resultdata
我也试过使用 foreach 循环,但它导致了同样的错误
foreach ($postResult as $array) {
echo $array['Name'];
}
这是 $result 的输出,
Aws\Result Object
(
[data:Aws\Result:private] => Array
(
[CelebrityFaces] => Array
(
[0] => Array
(
[Name] => Emily Blunt
)
)
)
)
几天前我才开始使用 PHP,所以我只是个初学者。我也试着搜索一个特定的答案,但它总是抛出同样的错误。
如有任何帮助,我们将不胜感激!
$result
是classAws\Result
的对象。根据 this documentation 以下应该有效:
$celebFaces = $result->get('CelebrityFaces');
foreach($celebFaces as $face) {
echo $face['Name'];
}