|
DomNode->get_content
Gets content of node
()
Example 567. Getting a content<?php Code Examples / Notes » domnode_get_contentsysadmin
Seems that get_content() always returns utf-8. Opening document with something like $dom->dump_mem(true,"ISO-8859-1") makes no difference! d dot cicognani
Only to correct a very small error, but maybe difficult to find in che function GetContentAsString posted by someone in April 2005. There was $anode-node_value() instead of $anode->node_value(). This is the right version: <?php function GetContentAsString($node) { $st = ""; foreach ($node->child_nodes() as $cnode) if ($cnode->node_type()==XML_TEXT_NODE) $st .= $cnode->node_value(); else if ($cnode->node_type()==XML_ELEMENT_NODE) { $st .= "<" . $cnode->node_name(); if ($attribnodes=$cnode->attributes()) { $st .= " "; foreach ($attribnodes as $anode) $st .= $anode->node_name() . "='" . $anode->node_value() . "'"; } $nodeText = GetContentAsString($cnode); if (empty($nodeText) && !$attribnodes) $st .= " />"; // unary else $st .= ">" . $nodeText . "</" . $cnode->node_name() . ">"; } return $st; } ?> 11-apr-2005 05:41
Here's a routine I wrote that acts like get_content() but returns embedded XHTML in the string returned. I needed this as I was wanting to embed HTML formatting codes in my HTML (e.g., "<br />") and converting them to HTML entities or using CDATA was a huge hassle. <?php function GetContentAsString($node) { $st = ""; foreach ($node->child_nodes() as $cnode) if ($cnode->node_type()==XML_TEXT_NODE) $st .= $cnode->node_value(); else if ($cnode->node_type()==XML_ELEMENT_NODE) { $st .= "<" . $cnode->node_name(); if ($attribnodes=$cnode->attributes()) { $st .= " "; foreach ($attribnodes as $anode) $st .= $anode->node_name() . "='" . $anode-node_value() . "'"; } $nodeText = GetContentAsString($cnode); if (empty($nodeText) && !$attribnodes) $st .= " />"; // unary else $st .= ">" . $nodeText . "</" . $cnode->node_name() . ">"; } return $st; } ?> krautman
get_content() always returns UTF-8 (as should be!). To get the content right just code it like $myContent = utf8_decode($myNode->get_content()); Works fine! |
Change LanguageDomAttribute->name DomAttribute->set_value DomAttribute->specified DomAttribute->value DomDocument->add_root DomDocument->create_attribute DomDocument->create_cdata_section DomDocument->create_comment DomDocument->create_element_ns DomDocument->create_element DomDocument->create_entity_reference DomDocument->create_processing_instruction DomDocument->create_text_node DomDocument->doctype DomDocument->document_element DomDocument->dump_file DomDocument->dump_mem DomDocument->get_element_by_id DomDocument->get_elements_by_tagname DomDocument->html_dump_mem DomDocument->xinclude DomDocumentType->entities() DomDocumentType->internal_subset() DomDocumentType->name() DomDocumentType->notations() DomDocumentType->public_id() DomDocumentType->system_id() DomElement->get_attribute_node() DomElement->get_attribute() DomElement->get_elements_by_tagname() DomElement->has_attribute() DomElement->remove_attribute() DomElement->set_attribute_node() DomElement->set_attribute() DomElement->tagname() DomNode->add_namespace DomNode->append_child DomNode->append_sibling DomNode->attributes DomNode->child_nodes DomNode->clone_node DomNode->dump_node DomNode->first_child DomNode->get_content DomNode->has_attributes DomNode->has_child_nodes DomNode->insert_before DomNode->is_blank_node DomNode->last_child DomNode->next_sibling DomNode->node_name DomNode->node_type DomNode->node_value DomNode->owner_document DomNode->parent_node DomNode->prefix DomNode->previous_sibling DomNode->remove_child DomNode->replace_child DomNode->replace_node DomNode->set_content DomNode->set_name DomNode->set_namespace DomNode->unlink_node DomProcessingInstruction->data DomProcessingInstruction->target DomXsltStylesheet->process() DomXsltStylesheet->result_dump_file() DomXsltStylesheet->result_dump_mem() domxml_new_doc domxml_open_file domxml_open_mem domxml_version domxml_xmltree domxml_xslt_stylesheet_doc domxml_xslt_stylesheet_file domxml_xslt_stylesheet domxml_xslt_version xpath_eval_expression xpath_eval xpath_new_context xpath_register_ns_auto xpath_register_ns xptr_eval xptr_new_context |