а) Прав ли я, полагая, что правильный формат для сценария в голове в HTML5 равен <script src="script.js"></script>
?
б) Как добиться правильного результата с помощью DOMDocument?
$domImplementation = new \DOMImplementation ();
$docType = $domImplementation->createDocumentType ( 'html', '', '' );
$document = $domImplementation->createDocument ( 'http://www.w3.org/1999/xhtml', 'html', $docType );
$head = $document->createElement ( 'head' );
$script = $document->createElement ( 'script', '' );
$script->setAttribute ('src', 'script.js');
$head->appendChild ( $script );
производит
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<script src="script.js"/>
Валидатор HTML5 говорит
Самозакрывающийся синтаксис (/>
), используемый для непустого элемента HTML. Игнорирование косой черты и обработка в качестве начального тега.