Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: обратится к элементу массива

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: stdClass Object
petrosav
Отправлено: 10 Апреля, 2014 - 14:54:40
Post Id



Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




подскажите как обратится к элементу массива если в массиве присутствует stdClass Object

вот структура массива
Спойлер (Отобразить)
это то, что выводит print_r($content)

а нужно обратится к [value] => само объявление
 
 Top
Zuldek
Отправлено: 10 Апреля, 2014 - 14:57:57
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010  


Помог: 50 раз(а)




$array = (array)$class;

(Отредактировано автором: 10 Апреля, 2014 - 14:58:15)

 
 Top
petrosav
Отправлено: 10 Апреля, 2014 - 14:59:36
Post Id



Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Zuldek пишет:
$array = (array)$class;

а можно чуточку поподробнее.
 
 Top
Zuldek
Отправлено: 10 Апреля, 2014 - 15:01:18
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010  


Помог: 50 раз(а)




Что подробнее? Типы данных нужно знать. Тот элемент который у вас является объектом сделайте массивом. И обращайтесь к нему как к массиву на здоровье.
 
 Top
petrosav
Отправлено: 10 Апреля, 2014 - 15:02:49
Post Id



Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Zuldek пишет:
Что подробнее? Типы данных нужно знать. Тот элемент который у вас является объектом сделайте массивом. И обращайтесь к нему как к массиву на здоровье.

можно пример, обращения к элементу [value] => само объявление он практически в самом начале массива.
 
 Top
esterio
Отправлено: 10 Апреля, 2014 - 15:03:57
Post Id



Активный участник


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


Помог: 127 раз(а)




 
 Top
Zuldek
Отправлено: 10 Апреля, 2014 - 15:08:18
Post Id


Постоянный участник


Покинул форум
Сообщений всего: 2122
Дата рег-ции: Июнь 2010  


Помог: 50 раз(а)




Не буду разбирать я ваш массив пока не научитесь его правильно представлять в вопросе.
Вам сказано, что в вашем случае, stdClass Object в значении элемента массива означает, что его значением является объект.
чтобы обращаться к нему как к массиву, приведите его к массиву функцией (array)
 
 Top
petrosav
Отправлено: 10 Апреля, 2014 - 15:14:57
Post Id



Новичок


Покинул форум
Сообщений всего: 7
Дата рег-ции: Март 2014  


Помог: 0 раз(а)




Zuldek пишет:
его правильно представлять

как его правильно представить?
я распечатал его с помощью print_r на странице, где он присутствует.
(Добавление)
так пойдет
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  [body] => Array (
  3.          [#theme] => field
  4.                  [#weight] => 0
  5.                  [#title] => Текст объявления
  6.                  [#access] => 1
  7.                  [#label_display] => hidden
  8.                  [#view_mode] => full
  9.                  [#language] => und
  10.                  [#field_name] => body
  11.                  [#field_type] => text_with_summary
  12.                  [#field_translatable] => 0
  13.                  [#entity_type] => node
  14.                  [#bundle] => ad
  15.                  [#object] => stdClass Object (
  16.                               [vid] => 11
  17.                                           [uid] => 3
  18.                                           [title] => тема сообщения
  19.                                           [log] =>
  20.                                           [status] => 1
  21.                                           [comment] => 2
  22.                                           [promote] => 0
  23.                                           [sticky] => 0
  24.                                           [nid] => 11
  25.                                           [type] => ad
  26.                                           [language] => ru
  27.                                           [created] => 1397070156
  28.                                           [changed] => 1397070156
  29.                                           [tnid] => 0
  30.                                           [translate] => 0
  31.                                           [revision_timestamp] => 1397070156
  32.                                           [revision_uid] => 3
  33.                                           [body] => Array (
  34.                                                    [und] => Array (
  35.                                                                     [0] => Array (
  36.                                                                                        [value] => само объявление
  37.                                                                                            [summary] => краткое описание
  38.                                                                                            [format] =>
  39.                                                                                            [safe_value] => само объявление
  40.                                                                                            [safe_summary] => краткое описание ) ) )
  41.  

(Отредактировано автором: 10 Апреля, 2014 - 15:21:07)

 
 Top
Ch_chov
Отправлено: 10 Апреля, 2014 - 16:02:34
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2121
Дата рег-ции: Июль 2008  
Откуда: из города


Помог: 90 раз(а)




Цитата:
а нужно обратится к [value] => само объявление

Ну а при чем тут объект? Он совсем в другом месте находится. Обращайтесь как к обычному массиву.

И кстати есть даже функция специальная для этого:
https://api[dot]drupal[dot]org/api/drupa[dot][dot][dot]eld_view_value/7
 
 Top
Hapson
Отправлено: 10 Апреля, 2014 - 17:14:28
Post Id



Посетитель


Покинул форум
Сообщений всего: 356
Дата рег-ции: Июнь 2013  
Откуда: Ставропольский край


Помог: 10 раз(а)

[+]


petrosav
petrosav пишет:
как его правильно представить?
я распечатал его с помощью print_r на странице, где он присутствует.

Есть в html замечательный тег - PRE называется


-----
ПЫХ тут - ходи туда, прежде чем писать сюда (толку больше будет)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB