Найти элемент в объекте Laravel
Ниже вывод моего объекта laravel...
$my_array = Array( [0] => stdClass Object ( [From] => name1 [To] => name12 [Message] => hey) [1] => stdClass Object ( [From] => name13 [To] => name143 [Message] => byeeeeee)
Мне нужно найти name12
присутствует или нет без использования foreach loop
... как мне это сделать??? Я пытался...
if (in_array('name12', $my_array)) {
echo "Match found";
}
else {
echo "Match not found";
}
В любом случае, чтобы это исправить?
2 ответа
Решение
if count(
array_filter(
$my_array,
function($value) {
return $value->From == 'name12';
}
) > 0) {
echo "Match found";
} else {
echo "Match not found";
}
У вас есть два объекта в массиве и первые два ключа:
$ my_array [0] и $my_array[1]
Если вы уверены, что знаете количество элементов в массиве, вы можете сделать что-то вроде этого:
if(
$my_array[0]->From === 'name12' ||
$my_array[0]->To === 'name12' ||
$my_array[1]->From === 'name12' ||
$my_array[1]->To === 'name12'
){
echo "Match found";
} else{
echo "Match not found";
}