Я работаю над механизмом шаблонов, мигрировав с регулярных выражений на DOM.Тем не менее, кажется, что всякий раз, когда я создаю DomDocumentFragment
для временной инкапсуляции некоторой части документа, атрибут пространства имен добавляется к каждому узлу во фрагменте.Поскольку мое пространство имен по умолчанию для данного документа в 99% случаев будет XHTML, оно добавляет объявление пространства имен XHTML.
Будучи пространством имен по умолчанию, это кажется бесплодным, и в конечном итоге узлы в любом другом пространстве имен будут удаленыв любом случае во время рендеринга.
Помимо итеративного удаления атрибутов пространства имен, есть ли способ предотвратить возникновение этого с самого начала?Это довольно проблематично, так как это, вероятно, значительно увеличит размер файла рендеринга, так как большие части данного документа могут храниться во фрагменте.
Я пробовал $doc->normalizeDocument()
, но, как я предполагал, он ничего не сделал.