php+xml实现在线英文词典查询的方法
投稿:shichen2014
这篇文章主要介绍了php+xml实现在线英文词典查询的方法,通过将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>
查询文件:word.php
复制代码 代码如下:
<h2>在线英汉词典</h2>
<form action="xmlprocess.php" method="post">
请输入英文单词:<input type="text" name="enword" />
<input type="submit" value="查询" name="sub">
</form>
<form action="xmlprocess.php" method="post">
请输入英文单词:<input type="text" name="enword" />
<input type="submit" value="查询" name="sub">
</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;
?>
//创建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;
?>
希望本文所述对大家的php操作XML程序设计有所帮助。