php+xml实现在线英文词典之添加词条的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了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.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>

处理文件: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");
}
?>

希望本文所述对大家的php+XML程序设计有所帮助。

相关文章

Laravel中正确地返回HTTP状态码方法示例

Laravel中正确地返回HTTP状态码方法示例

在 API 中返回状态码是很重要的,因为响应处理程序是工作在 API 的响应状态码之上的。 写 API 时其中有一个重要的地方是更好的处理响应状态码。以前,我一般会使用不常用的 Int...

PHP利用str_replace防注入的方法

PHP各种过滤字符函数复制代码 代码如下:   <?php    /**    * 安全过滤函数&n...

PHP 进度条函数的简单实例

PHP 进度条函数的简单实例

PHP 进度条函数的简单实例 其实进度条的做法很简单的。网上的一大堆,自己写了一个,哈哈,感觉看起来很有感觉。 实例代码: function ShowPercent($now,$to...

PHP实现简单的模板引擎功能示例

本文实例讲述了PHP实现简单的模板引擎功能。分享给大家供大家参考,具体如下: php web开发中广泛采取mvc的设计模式,controller传递给view层的数据,必须通过模板引擎才...

smarty缓存用法分析

本文详细分析了smarty缓存的用法。分享给大家供大家参考。具体分析如下: 一开始以为smarty只是用来做一些掩饰php代码功能,但是后来才知道还有模板缓存这个强大的功能。 什么是模板...