Атрибут значения DOMAttr сбивает с толку? - PullRequest
1 голос
/ 05 февраля 2012

Я работал с DOMDocument и всеми связанными с ним классами, но некоторые вещи мне до сих пор неясны.

Например, $ domattr-> value возвращает

http://bla.com/?bla=test&bla2=test 

когда он должен вернуться

http://bla.com/?bla=test&bla2=test

(потому что это то, что буквально содержит текстовый узел узла атрибута)

Итак, вот мои вопросы:

1) Почему происходит преобразование амперсанда: какая логика стоит за ним с точки зрения DOMAttr?

2) Как я могу работать с DOMNodes, чтобы получить реальные значения?

3) Какие лучшие практики при работе с такого рода вещами? Я хочу иметь последовательный и предсказуемый код и поведение, но это может сбить с толку, когда я не получаю то, что ожидаю.

1 Ответ

1 голос
/ 05 февраля 2012

Весь смысл написания & вместо & заключается в том, что символ & имеет особое значение в исходном коде HTML. Когда браузер анализирует исходный код HTML в дереве DOM, он преобразует сущности HTML ( , • и т. Д.) В соответствующие им символы. Нет необходимости сохранять HTML-объекты внутри дерева DOM - браузеры этого не делают.

...