Вставить созданный элемент в начало тега html с помощью PHP DOM

Я пытаюсь вставить <base> HTML <base> сразу после открытия <head> страницы с помощью dom. Я пробовал использовать appendChild который просто вставляет его перед </head> что не хорошо.

Код im использует:

 $head = $dom->getElementsByTagName('head')->item(0); $base = $dom->createElement('base'); $base->setAttribute('href', $url); $head->parentNode->insertBefore($base, $head); 

Это добавляет <base> перед <head> , который по-прежнему не подходит!

Есть идеи? Пиво для правильного ответа!

 $head = $dom->getElementsByTagName('head')->item(0); $base = $dom->createElement('base'); $base->setAttribute('href',$url); if ($head->hasChildNodes()) { $head->insertBefore($base,$head->firstChild); } else { $head->appendChild($base); } 

Если элемент <head> уже имеет дочерние элементы, он вставляет элемент <base> перед первым ребенком <head> . Если <head> не имеет детей, он просто добавляет его в <head> .