Portál AbcLinuxu, 12. prosince 2025 06:28
$html = //promena obsahuje cely html kod z php $doc = new DOMDocument(); $doc->loadHTML($html); $doc->formatOutput = true; $doc->encoding = 'UTF-8'; echo $doc->saveHTML();Pokud vypíšu echem promnou $html primo, je vse v poradku. Dekuji za pomoc
$html = '<!DOCTYPE html>'; $html .= '<html lang="cs">';cili nemam obsah stranek v xml. Nejaky napad? Diky
echo $xsl->transformToXML($doc);protože v $doc mám DOM výstupních dat a v $xsl je výstupní šablona. XML ani HTML v PHP vůbec nevytvářím, protože by to dost zdržovalo.
XML ani HTML v PHP vůbec nevytvářím, protože by to dost zdržovalo.Muzes to prosim upresnit? Diky
$html, parsovat loadHTML() a hned zase serializovat saveHTML(). To je spousta zbytečných úkonů navíc. Máš k tomu nějaký speciální důvod?
To je snad i nemožné, ne?
XMLwriter generuje celkem snadno docela hezký kód. Tohle jsou pozůstatky z mých experimentů s REST, kde jsem si ověřil, že HTML umí jen GET a POST. Kdyby to měl být produkční kód, asi bych to napsal slušněji.
Tohle dělám, když z nějakého důvodu nechci použít šablonu. Kód z velké části recykluji. Určitě to lze napsat lépe. Vyzkoušej si to.
<?php
$method= $_SERVER['REQUEST_METHOD'];
$html = new XMLwriter();
$html->openMemory();
$html->setIndent(true);
$html->writeDTD('html');
$html->startElement('html');
$html->startElement('head');
$html->startElement('meta');
$html->writeAttribute('charset', 'UTF-8');
$html->endElement();
$html->startElement('script');
$html->writeAttribute('type', 'application/javascript');
$html->writeAttribute('src', 'jquery-latest.min.js');
$html->text('');
$html->endElement();
$html->startElement('script');
$html->writeAttribute('type', 'application/javascript');
$html->text(<<<EOT
$(document).ready(function() {
$('h1').css({'background-color': 'yellow'});
$.ajax({context: document.body}).done(function()) {
$(this).css({'background-color': 'blue'});
}
});
EOT
);
$html->endElement();
$html->endElement();
$html->startElement('body');
$html->writeElement('h1', $method);
$html->writeElement('p', 'Příšerně žluťoučký kůň úpěl ďábelské ódy');
$html->writeElement('p', 'Výrobek "hysterezní smyčka" prodává firma <Albert&syn>');
foreach (array( "GET", "POST", "PUT", "DELETE", "PATCH") as $method) {
$html->startElement('form');
$html->writeAttribute('method', $method);
$html->startElement('input');
$html->writeAttribute('type', 'text');
$html->writeAttribute('value', $method);
$html->endElement();
$html->startElement('input');
$html->writeAttribute('type', 'submit');
$html->writeAttribute('value', 'Odeslat');
$html->endElement();
$html->endElement();
}
$html->endElement();
$html->endElement();
echo $html->flush();
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.