Pergunta

Tenho a sensação de que estou sendo grosso, mas aqui está o meu problema:

Estou criando árvores XML dinâmicos usando PHP. Estas árvores descrever hierarquias de funcionários, diretórios de arquivos, etc. Eles compreendem pequenas seções de conteúdo em uma página web. O resto da página é colado junto de várias outras fontes que podem ser baseadas em SQL ou texto estático ou alguma classe apresentação especial. Quando vou a saída de minhas árvores, eu transformar o XML em um <ul> aninhada. Eu gostaria de saída que <ul> sem qualquer informação doctype / cabeçalho. aulas DomDocument e SimpleXML do PHP não parecem permitir isso. É a única opção para retirar a informação ofender fora depois de armazenar o <ul> em uma string?

Foi útil?

Solução

Acontece que se eu colocar <xsl:output method="html" /> eu já não saída de um DOCTYPE automática. Problema resolvido.

Outras dicas

Há um comentário sobre isso no final desta página: http://www.php.net/manual/en/libxml.constants.php

SimpleXML adiciona automaticamente um cabeçalho. Há uma opção para desligá-lo ao criar um objeto XML simples - seu o LIBXML_NOXMLDECL mas ele não funciona - ainda há um bug aberto sobre isso -. Ver link na parte inferior da página acima

Este é o que eu fiz no final:

$doc = new DOMDocument('1.0');
$root = $doc->createElement('items');
$root = $doc->appendChild($root);
$title = $doc->createElement('title');
$title = $root->appendChild($title);
$text = $doc->createTextNode($item->title);
$text = $title->appendChild($text);
$items[] =  $doc->saveXML($root);

Claro que isso não me dá um objeto SimpleXML, mas pelo menos o seu xml e não tem o cabeçalho ..

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top