Intereting Posts
Использовать директиву Laravel @include с файлами без PHP? Как мы можем добавить два интервала дат в PHP как присоединиться к двум таблицам по общим атрибутам в mysql и php? какова точка ускорения кавычек в php Когда использовать подготовленные запросы PDO. Ошибка mysql_real_escape Doctrine2 bulk import пытается работать с другим объектом php no good escape Как использовать соединение SQL Server в Laravel? PhpStorm: Как добавить заглушки методов из библиотеки PECL, которую PhpStorm в настоящее время не поддерживает? Удалить символ ZERO WIDTH NON-JOINER из строки в PHP AJAX & PHP: параметры GET, вызывающие ошибку ключа Flikr api Не удалось обновить запасное количество товара для продукта в Magento 1.6.2 woocommerce_checkout_order_processed функция выполнения крюка дважды Внедрение Facebook Credits – приложение не отвечает (ошибка синтаксического анализа signed_request при обратном вызове) Как отправить сложные типы из PHP SoapClient на сервер ASP.NET SOAP?

Выделение конкретных данных из многомерного массива PHP

Я пытаюсь вытащить только данные «сообщения» из каждого из этих массивов, содержащихся в этом многомерном массиве, но не могу понять, как получить достаточно глубоко в массиве, чтобы вытащить его. Страница, которую я использую, возвращает данные таким образом, поэтому я не могу редактировать ее, чтобы ее можно было по-другому возвращать.

Array ( [0] => stdClass Object ( [revision_cache] => stdClass Object ( [revision] => 14 [email] => email@email.com [changed_dirs] => Array ( ) [account_id] => 133673 [message] => Deleted unneeded help desk files. [hash_id] => [author] => asdfasfd [too_large] => [user_id] => 308011 [repository_id] => 401677 [changed_files] => Array ( [0] => Array ( [0] => hdeskdelete.php [1] => delete ) [1] => Array ( [0] => hdeskrespond.php [1] => delete ) [2] => Array ( [0] => hdesktickets.php [1] => delete ) ) [time] => 2012/08/13 17:01:58 -0500 [changed_properties] => ) ) [1] => stdClass Object ( [revision_cache] => stdClass Object ( [revision] => 13 [email] => email@email.com [changed_dirs] => Array ( ) [account_id] => 133673 [message] => Major updates and restyling of Help Desk system. [hash_id] => [author] => asdfasdfasdf [too_large] => [user_id] => 308011 [repository_id] => 401677 [changed_files] => Array ( [0] => Array ( [0] => members/hdeskdelete.php [1] => delete ) [1] => Array ( [0] => Array ( [0] => helpdesk.php [1] => members/helpdesk.php [2] => 3 ) [1] => copy ) [2] => Array ( [0] => members/hdeskrespond.php [1] => delete ) [3] => Array ( [0] => members/hdesktickets.php [1] => delete ) [4] => Array ( [0] => Array ( [0] => hdeskdelete.php [1] => members/hdeskdelete.php [2] => 3 ) [1] => copy ) [5] => Array ( [0] => members/helpdesk.php [1] => delete ) [6] => Array ( [0] => Array ( [0] => hdeskrespond.php [1] => members/hdeskrespond.php [2] => 3 ) [1] => copy ) [7] => Array ( [0] => Array ( [0] => hdesktickets.php [1] => members/hdesktickets.php [2] => 3 ) [1] => copy ) ) [time] => 2012/08/13 17:01:20 -0500 [changed_properties] => ) ) [2] => stdClass Object ... 

Поэтому в основном этот блок массивов продолжается в течение некоторого времени. Мне нужно только вытащить значение каждый раз, когда «сообщение» является ключом. Есть идеи?

Чтобы перебрать все элементы в массиве, проверяя, есть ли сообщение, что-то вроде этого:

 foreach($inputArray as $element) { if( ! empty($element->revision_cache->message) { //do something with it } } 

Это должно сделать это:

 $message = $arrayname[0]["revision_cache"]["message"]; 

Пытаться

 foreach($array as $item){ echo $item->revision_cache->message."<br>"; }