Hello Adam, Thursday, January 8, 2004, 12:59:19 AM, you wrote:
> On Thu, 8 Jan 2004, Marcus Boerger wrote: >> From my opinion the current behavior is perfect because i see simplexml from >> an xml developers side and not from an html developers side. The former must >> typically know exactly where his strings comme from while the latter has >> only text to deal with and often has situations where he needs to filter out >> formatting tags like the <i> in the example. > All of my SimpleXML work is strictly XML, too. However, my thought was > that I could always call strip_tags() to eliminate the information I > didn't want, but there was no apply_tags() function to do the > reverse. :) Therefore, it was better to use the other method. Well there's ext/SPL in PECL. A SimpleXML Object is also a Iterator and it is a RecursiveIterator if ext/SPL is build in. Then SPL also offers a RecursiveIteratorIterator that taks a RecursiveIterator...so it is just a foreach-four-liner. $text = ''; forach(new RecursiveIteratorIterator($sxe) as $el) { $text .= $el; } >> So i'd say let us add a method for returning the complete content. Adam >> could you do that? > That wouldn't be too difficult (although I am busy for the next day or > two). However, as much as I loathe toggles, I'm wondering if it > wouldn't be better to make this an object-wide setting. My thought are > that on an object-by-object basis, you either always want tags or > never want them. > Something like: > $sxe = simplexml_load_file('doc.xml'); > $sxe->displayTags = true; > This would keep the interface clean. Or would that just confuse things > with more magic? > Also, what would the default behavior should be? I can argue both > sides of the issue right now. :) The idea is really nice but you mentioned the problems yourself it is increasing the wtf factor. Maybe we implement both getContent and getText and do this kind of magic in the next version aka 5.1? -- Best regards, Marcus mailto:[EMAIL PROTECTED] -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php