2014-12-23 2 views
0

Я ищу способ, как я могу вставить узел в самом начале узла, независимо от того, что есть (я делаю epub).PHP DomNode insert before anything

Пример:

<p>Some test<a href="...">some link</a> Some more text<span id="page_10"></span></p> 

Теперь я хочу, чтобы вставить туда что-то, он должен выглядеть следующим образом:

<p><myInsertedNode>My content</myInsertedNode>Some test<a href="...">some link</a> Some more text<span id="page_10"></span></p> 

Я хотел использовать InsertBefore, но он не работает. потому что я должен дать ему Узел. У моего "<p>" не всегда есть некоторые внутренние заметки, но они могут иметь их. Поэтому лучше всего я мог архивировать, должен был вставить его перед "<p>", но это не то, что я намереваюсь сделать.

+1

Возможный дубликат [Вставить созданный элемент в начале тега html с использованием PHP DOM] (http://stackoverflow.com/questions/3180113/insert-created-element-at-start-of-html-tag-using- php-dom) –

+0

Не совсем, потому что мне нужно вставить элемент перед nodeValue тоже! –

+0

Я установил это на PHPFiddle, и он работает хорошо. Это также ответ, который вы, кажется, нашли для себя ниже. –

ответ

0

ОК, через 3 часа искал, я нашел шокирующе легко awnser:

Использование в качестве второго параметра InsertBefore FirstChild!

+0

Интересный факт: это даже работает, если детей вообще нет! –