2012-02-17 2 views
1

Я перебираю массив, который сохранил некоторые значения от HTML::TreeBuilder, где использовался look_down(). Когда я print $value, я получаю ниже, что я хотел бы разыменовать.Dereference HTML :: Элемент хеш-ссылки

HTML::Element=HASH(0xe687f4) 

Выполнение печати \$value кажется, возвращает общую ссылку:

REF(0xe6ea84) 

Что такое символ/s Мне нужно разыменовывать HTML :: Element хэш ссылки?

Примечание: Использование $$value возвращает ошибку Not a SCALAR reference

EDIT: решение найдено благодаря CJM через комментарии. Мне нужно было распечатать $value->as_HTML

+0

Если его ссылка, то попробуйте использовать $$ значение. Лучше опубликуйте код, чтобы я мог просмотреть его для лучшей помощи. – Raghuram

+3

Какой результат вы ожидаете получить? Вы ищете '$ value-> as_HTML'? – cjm

+0

@cjm - Спасибо, что я был после !!! – kurotsuki

ответ

4

Если у вас есть объект (обозначенный частью «HTML :: Элемент» HTML::Element=HASH(0xe687f4)), вы должны получить к нему доступ только через свой документированный интерфейс. Для HTML::Element важными методами являются as_HTML (который возвращает элемент и его содержимое как строку HTML-кода) и dump (который печатает сводку содержимого и полезен для отладки).

Итак, если вы хотите распечатать HTML вы распаковали, использование:

print $value->as_HTML; 
Смежные вопросы