On Sun, 14 Mar 2010 22:02:22 +0800, Ashley Sheridan wrote:
On Sun, 2010-03-14 at 21:58 +0800, Dasn wrote:
Hello, I want to convert some xml stuff to simple string using php, say:
<?php
$string = <<<XML
<a> left <foo>center1<ok>ok</ok>center2</foo>right </a>
XML;
$xml = simplexml_load_string($string);
echo $xml;
?>
The code will output "left right" while all the central stuff was lost.
How should I print it as "left center1 ok center2 right" ?
Thanks in advance, and please Cc me. :)
Can't you just call strip_tags() on the string? As you don't need to
echo any attribute values, I would have thought it would be perfect. As
XML is meant to be well-formed anyway, strip_tags shouldn't cause any
problems with broken or missing closing tags.
Thanks Ashley for your reply.
Sorry that my description was not clear enough.
Actually I don't want to just strip the tags, sometimes I also wanna
change some elements. For another example:
"<a>bla<function>strip_tags</function>bla</a>". When output, I also want
to make some change to the data depending on the tags, say, trying to
append a pair of "()" to the "<function>" element, printing it as "bla
strip_tags() bla".
The problem is when I processing the nodes with SimpleXML, I couldn't get
the right order of the data. That is :
"echo $xml->a, (string) $xml->a->function . '()'" // prints "bla bla
strip_tags()"
Thank you anyway. Cc please.
--
Dasn
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php