源码如下:
<?
$dom = new DomDocument("1.0");
$root = $dom -> createElement("html");
$title = $dom -> createElement("title");
$meta = $dom -> createElement("meta");
$head = $dom -> createElement("head");
$titleText = $dom -> createTextNode("这是XML的标题"); //此处无法显示
$metaText = $dom -> createTextNode("这是XML的meta标识符"); //此处无法显示
$table = $dom -> createElement("table");
$tr = $dom -> createElement("tr");
$td = $dom -> createElement("td");
$tdText = $dom -> createTextNode("欢迎使用XML"); //此处无法显示
$root = $dom -> appendChild($root);
$head = $root -> appendChild($head);
$title = $head -> appendChild($title);
$meta = $head -> appendChild($meta);
$comment = $title -> appendChild($titleText);
$meta -> appendChild($metaText);
$td -> appendChild($tdText);
$tr -> appendChild($td);
$table -> appendChild($tr);
$root -> appendChild($table);
$dom -> save("test5.xml");echo "<hr/><a href=\"test5.xml\">查看test5.xml</a>";
?>
运行后点击“查看test5.xml”结果如下:
<?xml version="1.0" ?>
- <html>
- <head>
<title />
<meta />
</head>
- <table>
- <tr>
<td />
</tr>
</table>
</html>
没有代码中加的createTextNode值。
请问是哪里的问题?
<?
$dom = new DomDocument("1.0");
$root = $dom -> createElement("html");
$title = $dom -> createElement("title");
$meta = $dom -> createElement("meta");
$head = $dom -> createElement("head");
$titleText = $dom -> createTextNode("这是XML的标题"); //此处无法显示
$metaText = $dom -> createTextNode("这是XML的meta标识符"); //此处无法显示
$table = $dom -> createElement("table");
$tr = $dom -> createElement("tr");
$td = $dom -> createElement("td");
$tdText = $dom -> createTextNode("欢迎使用XML"); //此处无法显示
$root = $dom -> appendChild($root);
$head = $root -> appendChild($head);
$title = $head -> appendChild($title);
$meta = $head -> appendChild($meta);
$comment = $title -> appendChild($titleText);
$meta -> appendChild($metaText);
$td -> appendChild($tdText);
$tr -> appendChild($td);
$table -> appendChild($tr);
$root -> appendChild($table);
$dom -> save("test5.xml");echo "<hr/><a href=\"test5.xml\">查看test5.xml</a>";
?>
运行后点击“查看test5.xml”结果如下:
<?xml version="1.0" ?>
- <html>
- <head>
<title />
<meta />
</head>
- <table>
- <tr>
<td />
</tr>
</table>
</html>
没有代码中加的createTextNode值。
请问是哪里的问题?
要么$dom = new DOMDocument('1.0', 'utf-8');
并且将写入的结点值转成utf8的.
反正就是编码问题,在我这里测试是没有问题的.
这里面的值怎么转换编码呢?
createTextNode((iconv('gb2312','utf-8','这是XML的标题'));