Array
(
[0] => Array
(
[EndpointArn] => arn:aws:sns
[Attributes] => Array
(
[Enabled] => true
[Token] => APA91
[CustomUserData] => Alcatel
)
)
[1] => Array
(
[EndpointArn] => arn:aws:sns:ap
[Attributes] => Array
(
[Enabled] => true
[Token] => APA91bGC
[CustomUserData] => Oppo
)
)
)
Я получаю этот массив из источника.
Я новичок в yalinqo, поэтому после попыток и ошибок я могу напечатать CustomUserData с этим кодом:
$result= from($Model2['Endpoints'][0]['Attributes'])->select(function($np) { return $np; });
print $result->toArrayDeep()['CustomUserData'];
Теперь я хочу напечатать EndpointArn на основе CustomUserData, который я выбрал, но мой код не работает.
Это код:
print
from($Model2['Endpoints'])
->select(function($np){ return $np['EndpointArn']; })
->where(function($np){return $np['Attributes']['CustomUserData'] == 'Oppo';})
->toArrayDeep()
;
Сообщение об ошибке:
Warning: Illegal string offset 'Attributes' in /home/u
Warning: Illegal string offset 'CustomUserData' in /home/u
Warning: Illegal string offset 'Attributes' in /home/u
Warning: Illegal string offset 'CustomUserData' in /home/u
Этот код:
print
from($Model2['Endpoints'])
->select(function($np){ return $np['EndpointArn']; })
->where(function($np){return $np['Attributes']['CustomUserData'] == 'Oppo';})
;
Сообщение об ошибке:
Catchable fatal error: Object of class YaLinqo\Enumerable could not be converted to string in
Может ли кто-нибудь затенить здесь свет?
Благодарю.
После попытки и ошибки вот ответ:
print
from($Model2['Endpoints'])
->where(function($np){return $np['Attributes']['CustomUserData'] == 'Oppo';})
->select(function($np){ return $np['EndpointArn']; })
->toString()
;
Результат
arn:aws:sns:ap
Других решений пока нет …