php+xml实现在线英文词典之添加词条的方法
程序员文章站
2022-05-30 13:48:14
本文实例讲述了php+xml实现在线英文词典之添加词条的方法。分享给大家供大家参考。具体如下:
接着上一篇《》,这里要添加一个功能,提交英文单词和中文意思,将这些信息添加...
本文实例讲述了php+xml实现在线英文词典之添加词条的方法。分享给大家供大家参考。具体如下:
接着上一篇《》,这里要添加一个功能,提交英文单词和中文意思,将这些信息添加到xml文档中。
xml文件(数据库):words.xml
复制代码 代码如下:
<?xml version="1.0" encoding="utf-8"?>
<words>
<word>
<en>boy</en>
<ch>男孩</ch>
</word>
<word>
<en>girl</en>
<ch>女孩</ch>
</word>
<word>
<en>teacher</en>
<ch>老师</ch>
</word>
<word>
<en>beauty</en>
<ch>美女</ch>
</word>
</words>
<words>
<word>
<en>boy</en>
<ch>男孩</ch>
</word>
<word>
<en>girl</en>
<ch>女孩</ch>
</word>
<word>
<en>teacher</en>
<ch>老师</ch>
</word>
<word>
<en>beauty</en>
<ch>美女</ch>
</word>
</words>
查询与添加文件:words.php
复制代码 代码如下:
<h2 style="color:green">在线英汉词典</h2>
<h4>查询英文单词</h4>
<form action="xmlprocess.php" method="post">
请输入英文单词:<input type="text" name="enword" />
<input type="submit" value="查询" name="sub" />
</form>
<h4>添加英文单词</h4>
<form action="xmlprocess.php" method="post">
英文单词:<input type="text" name="en_word" /><br />
中文意思:<input type="text" name="ch_word" />
<input type="submit" value="添加" name="add">
</form>
<h4>查询英文单词</h4>
<form action="xmlprocess.php" method="post">
请输入英文单词:<input type="text" name="enword" />
<input type="submit" value="查询" name="sub" />
</form>
<h4>添加英文单词</h4>
<form action="xmlprocess.php" method="post">
英文单词:<input type="text" name="en_word" /><br />
中文意思:<input type="text" name="ch_word" />
<input type="submit" value="添加" name="add">
</form>
处理文件:xmlprocess.php
复制代码 代码如下:
<?php
//创建xml对象
$xmldoc = new domdocument();
$xmldoc->load("words.xml");
//查询
if(!empty($_post['sub'])){
$en_word = $_post['enword'];
$word = $xmldoc->getelementsbytagname("en");
for($i=0;$i<$word->length;$i++){
if($en_word==$word->item($i)->nodevalue){
$cn_word = $xmldoc->getelementsbytagname("ch")->item($i)->nodevalue;
break;
}else{
$cn_word = "找不到你所输入的单词";
}
}
echo $cn_word;
}
//增加词条
if(!empty($_post['add'])){
$en_word = $_post['en_word'];
$ch_word = $_post['ch_word'];
//获取根节点
$words = $xmldoc->getelementsbytagname("words")->item(0);
//增加元素,并添加内容
$new_word = $xmldoc->createelement("word");
$new_word_en = $xmldoc->createelement("en");
$new_word_en->nodevalue = $en_word;
$new_word_ch = $xmldoc->createelement("ch");
$new_word_ch->nodevalue = $ch_word;
//元素之间挂载,意思是将子元素与父元素相连
$new_word->appendchild($new_word_en);
$new_word->appendchild($new_word_ch);
$words->appendchild($new_word);
//保存
$xmldoc->save("words.xml");
}
?>
//创建xml对象
$xmldoc = new domdocument();
$xmldoc->load("words.xml");
//查询
if(!empty($_post['sub'])){
$en_word = $_post['enword'];
$word = $xmldoc->getelementsbytagname("en");
for($i=0;$i<$word->length;$i++){
if($en_word==$word->item($i)->nodevalue){
$cn_word = $xmldoc->getelementsbytagname("ch")->item($i)->nodevalue;
break;
}else{
$cn_word = "找不到你所输入的单词";
}
}
echo $cn_word;
}
//增加词条
if(!empty($_post['add'])){
$en_word = $_post['en_word'];
$ch_word = $_post['ch_word'];
//获取根节点
$words = $xmldoc->getelementsbytagname("words")->item(0);
//增加元素,并添加内容
$new_word = $xmldoc->createelement("word");
$new_word_en = $xmldoc->createelement("en");
$new_word_en->nodevalue = $en_word;
$new_word_ch = $xmldoc->createelement("ch");
$new_word_ch->nodevalue = $ch_word;
//元素之间挂载,意思是将子元素与父元素相连
$new_word->appendchild($new_word_en);
$new_word->appendchild($new_word_ch);
$words->appendchild($new_word);
//保存
$xmldoc->save("words.xml");
}
?>
希望本文所述对大家的php+xml程序设计有所帮助。
上一篇: php内存缓存实现方法