问题:请问以下代码如何修改可以输出以下内容:
title--11
author--22
content--33
代码如下:
message.html
留言板
发表留言
message.php
createElement('threads');
$dom->appendChild($threads);
//创建根节点threads的子节点thread
$thread = $dom->createElement('thread');
$threads->appendChild($thread);
//创建thread的子节点title
$title = $dom->createElement('title');
$thread->appendChild($title);
//为title创建文本子节点
$title_value = $dom->createTextNode($_POST['title']);
$title->appendChild($title_value);
//创建thread的子节点author
$author = $dom->createElement('author');
$thread->appendChild($author);
//为author创建文本子节点
$author_value = $dom->createTextNode($_POST['author']);
$author->appendChild($author_value);
//创建thread的子节点content
$content = $dom->createElement('content');
$thread->appendChild($content);
//为content创建文本子节点
$content_value = $dom->createTextNode($_POST['content']);
$content->appendChild($content_value);
$xml = $dom->saveXML();//保存XML
//加载XML文件
$dom->load($xml);
//读取根节点
$root = $dom->documentElement;
/*
定义一个使用DOM读取XML内容的函数
*/
function readXML($node){
//获取根节点的全部子节点
$child = $node->childNodes;
foreach($child as $c){ //循环读取子节点中的内容
if($c->nodeType == XML_TEXT_NODE){//如果节点类型为文本节点类型
echo $c->nodeValue.'
';
}elseif($c->nodeType == XML_ELEMENT_NODE){//如果节点类型为节点对象
//echo $c->nodeName.'--';
readXML($c);
}
}
}
$fp = fopen('message.xml','w');//打开文件
if(fwrite($fp,$xml)){//写入内容
echo '留言成功
';
readXML($root);
}else{
echo '留言失败';
}
fclose($fp);//关闭文件
?>
谢谢
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
认证0级讲师