PHP: DomNode->get_content - Manual

downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

DomNode->has_attributes DomNode->first_child

Last updated: Sat, 27 Jan 2007

view this page in

# DomNode->get_content

(no version information, might be only in CVS)

DomNode->get_content -- Gets content of node

## Описание

string DomNode->get_content ( void )

This function returns the content of the actual node.

Пример 1. Getting a content

`<?php
if (!$dom = domxml_open_mem($xmlstr)) {
echo "Error while parsing the document\n";
exit;
}
$root = $dom->document_element();
$node_array = $root->get_elements_by_tagname("element");
for ($i = 0; $i<count($node_array); $i++) {
$node = $node_array[$i];
echo "The element[$i] is: " . $node->get_content();
}
?>`

add a note User Contributed Notes
DomNode->get_content
d dot cicognani at ciconet dot it
23-Dec-2005 11:43
`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;
}
?>`
krautman at gmx dot net
06-Dec-2005 07:14
`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!`
sysadmin at webnow dot com dot br
26-Jul-2005 05:43
`Seems that get_content() always returns utf-8.
Opening document with something like
$dom->dump_mem(true,"ISO-8859-1")
makes no difference!`
11-Apr-2005 09: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;
}
?>`
add a note
DomNode->has_attributes DomNode->first_child

Last updated: Sat, 27 Jan 2007
show source | credits | stats | sitemap | contact | advertising | mirror sites
Copyright © 2001-2007 The PHP Group
All rights reserved.
This mirror generously provided by: Yahoo! Inc.
Last updated: Sat Mar 10 09:32:46 2007 PST