ID: 41931
User updated by: c00lways at gmail dot com
Reported By: c00lways at gmail dot com
-Status: Bogus
+Status: Open
Bug Type: DOM XML related
Operating System: windows xp prof
PHP Version: 5.2.3
New Comment:
is this still bogus?
it's weird, even without parameter in it, i still get
non-formated output
$dom = new DomDocument();
$dom->preserveWhiteSpace = true;
$dom->formatOutput = false;
$xdom = $dom->createElement( "yyy" );
$xchild = $dom->createElement( "OOO" );
$xchild2 = $dom->createElement( "subchild2" );
$xchild3 = $dom->createElement( "subchild3", "sub3" );
$xchild4 = $dom->createElement( "subchild4", "sub4" );
$xchild5 = $dom->createElement( "subchild5" );
$xchild2->setAttribute( "width", 200 );
$xchild2->appendChild( $xchild3 );
$xchild2->appendChild( $xchild4 );
$xchild2->appendChild( $xchild5 );
$xchild->appendChild( $xchild2 );
$xdom->appendChild( $xchild );
$dom->appendChild( $xdom );
echo $dom->saveXML( );
Previous Comments:
------------------------------------------------------------------------
[2007-07-09 14:11:04] [EMAIL PROTECTED]
Thank you for taking the time to write to us, but this is not
a bug. Please double-check the documentation available at
http://www.php.net/manual/ and the instructions on how to report
a bug at http://bugs.php.net/how-to-report.php
and now you are using mixed content (yyy contains both textual and
element nodes as children) so don't expect any formatting within there
... still bogus
------------------------------------------------------------------------
[2007-07-09 13:25:16] c00lways at gmail dot com
No,
still not working
------------------------------------------------------------------------
[2007-07-09 13:24:23] c00lways at gmail dot com
No,
still not working:
example code:
$dom = new DomDocument();
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
$xdom = $dom->createElement( "yyy", "yyyy value" );
$xdom->preserveWhiteSpace = false;
$xdom->formatOutput = true;
$xchild = $dom->createElement( "OOO", "ooo value" );
$xdom->appendChild( $xchild );
$dom->appendChild( $xdom );
echo $dom->saveXML( $xdom );
------------------------------------------------------------------------
[2007-07-09 11:52:31] [EMAIL PROTECTED]
You are probably looking at the results through a browser (or using a
different script that is buggy) as the script (once you change the
return to echo) outputs the correct results as expected.
------------------------------------------------------------------------
[2007-07-09 03:07:59] c00lways at gmail dot com
Description:
------------
when:
domdocument->preserveWhiteSpace = false;
domdocument->formatoutput( true );
...
domdocument->savexml( domelement );
does not have formatoutput effect on savexml( domelement )
the output string is only 1 line...
Reproduce code:
---------------
$dom = new DomDocument("1.0", "iso-8859-1");
$dom->preserveWhiteSpace = false;
$dom->formatOutput = true;
$domme = $dom->createElement( "xx" );
$domme->appendChild(new DOMElement("subxx"));
//try to force, but still same output
$domme->preserveWhiteSpace = false;
$domme->formatOutput = true;
$dom->appendChild( $domme );
return $dom->saveXML( $domme );
Expected result:
----------------
<xx>
<subxx />
</xx>
Actual result:
--------------
<xx><subxx /></xx>
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=41931&edit=1