php教程 php手册 PHP 操作xml编程之xml的crud操作

PHP 操作xml编程之xml的crud操作

May 25, 2016 pm 04:42 PM
크루드 작업

本文章来给大家介绍一个PHP 操作xml编程之xml的crud操作,有需要了解的同学可参考.

html代码页面,代码如下:

<html> 
	<head> 
	    <meta http-equiv="Content-type" content="text/html;charset=utf-8"> 
	</head> 
	<body> 
	    <form action="wordProcess.php" method="post"> 
	        <input type="text" name="enword"> 
	        <input type="hidden" name="type" value="query"> 
	        <input type="submit" value="查询"> 
	    </form> 
	    <span>添加单词</span> 
	    <form action="wordProcess.php" method="post"> 
	        英文:<input type="text" name="enword"><br> 
	        中文:<input type="text" name="zhword"><br> 
	        <!--<input type="hidden" name="type" value="insert"> 
	        <input type="hidden" name="type" value="update"> --> 
	        <input type="submit" name="type" value="添加"> 
	        <input type="submit" name="type" value="修改"> 
	    </form> 
	    <form action="wordProcess.php" method="post"> 
	        <input type="text" name="word"> 
	        <input type="hidden" name="type" value="delete"> 
	        <input type="submit" value="删除"> 
	    </form> 
	</body> 
	</html> 
로그인 후 복사

wordpress.php文件,代码如下:

<?php 
	 
	    //接收类型 看看用户做什么(查询、添加....) 
	    $type=$_REQUEST[&#39;type&#39;]; 
	    //echo $type; 
	    //exit(); 
	    //创建xml文档对象 
	    $doc=new DOMDocument(); 
	    $doc->load("words.xml"); 
	 
	    //进行判断 
	    if($type=="query"){ 
	        //获取用户输入的值 
	        $enword=$_REQUEST[&#39;enword&#39;]; 
	         
	        //判断是否进入查询 
	        $isEnter=false; 
	        //获取所有单词节点 
	        $words=$doc->getElementsByTagName("word"); 
	        //遍历单词节点 
	        for($i=0;$i<$words->length;$i++){ 
	            $word_node=$words->item($i); 
	            //获取不同的语种 
	            $en_word=getNodeVal($word_node,"en"); 
	            $zh_word=getNodeVal($word_node,"zh"); 
	            //查询 
	            if($enword==$en_word){ 
	                $isEnter=true; 
	                echo $enword."的中文意思是:".getNodeVal($word_node,"zh"); 
	                echo "<br/><a href=&#39;wordView.php&#39;>返回继续查询</a>"; 
	            }else if($enword==$zh_word){ 
	                $isEnter=true; 
	                echo $enword."的英文意思是:".getNodeVal($word_node,"en"); 
	                echo "<br/><a href=&#39;wordView.php&#39;>返回继续查询</a>"; 
	            } 
	        } 
	 
	        if(!$isEnter){ 
	            echo "无法查询"; 
	            echo "<br/><a href=&#39;wordView.php&#39;>返回继续查询</a>"; 
	        } 
	    }else if($type=="添加"){ 
	        //接收 
	        $enword=$_REQUEST[&#39;enword&#39;]; 
	        $zhword=$_REQUEST[&#39;zhword&#39;]; 
	        if(!emptyempty($enword)&&!emptyempty($zhword)){     
	            //获取根节点 
	            $root=$doc->getElementsByTagName("words")->item(0); 
	             
	            $word=$doc->createElement("word"); 
	            $en=$doc->createElement("en",$enword); 
	            $zh=$doc->createElement("zh",$zhword); 
	 
	            //进行挂载 
	 
	            $root->appendChild($word); 
	            $word->appendChild($en); 
	            $word->appendChild($zh); 
	 
	            //保存xml文件 
	            $doc->save("words.xml"); 
	            echo "添加成功<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	        }else{ 
	             
	            echo "请输入单词"; 
	            echo "<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	            exit(); 
	        } 
	    }else if($type=="delete"){ 
	         
	        $word=$_REQUEST[&#39;word&#39;]; 
	        //获取所有单词节点 
	        $words=$doc->getElementsByTagName("word"); 
	        $isEnter=false; 
	        //遍历单词节点 
	        for($i=0;$i<$words->length;$i++){ 
	            $word_node=$words->item($i); 
	            //获取不同的语种 
	            $en_word=getNodeVal($word_node,"en"); 
	            $zh_word=getNodeVal($word_node,"zh"); 
	            //查询 
	            if($word==$en_word || $word==$zh_word){ 
	                $isEnter=true; 
	                //找到父节点 
	                $word_node->parentNode->removeChild($word_node); 
	                $doc->save("words.xml"); 
	                echo "删除成功<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	            } 
	        } 
	 
	        if(!$isEnter){ 
	            echo "操作失败"; 
	            echo "<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	        } 
	    }else if($type="修改"){ 
	        //接收 
	        $enword=$_REQUEST[&#39;enword&#39;]; 
	        $zhword=$_REQUEST[&#39;zhword&#39;]; 
	        if(!emptyempty($enword)&&!emptyempty($zhword)){     
	            //获取所有单词节点 
	            $words=$doc->getElementsByTagName("word"); 
	            //遍历单词节点 
	            $isEnter=false; 
	            for($i=0;$i<$words->length;$i++){ 
	                $word_node=$words->item($i); 
	                //获取不同的语种 
	                $en_word=getNodeVal($word_node,"en"); 
	                $zh_word=getNodeVal($word_node,"zh"); 
	                //查询 
	                if($enword==$en_word && $zhword!=$zh_word){ 
	                    //修改中文 
	                    $isEnter=true; 
	                    //获取zh节点 
	                    $zh=$word_node->getElementsByTagName("zh")->item(0); 
	                    $zh->nodeValue=$zhword; 
	                    $doc->save("words.xml"); 
	                    echo "修改成功"; 
	                    echo "<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	                }else if($enword!=$en_word && $zhword==$zh_word){ 
	                    //修改因为 
	                    $isEnter=true; 
	                    $en=$word_node->getElementsByTagName("en")->item(0); 
	                    $en->nodeValue=$enword; 
	                    $doc->save("words.xml"); 
	                    echo "修改成功"; 
	                    echo "<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	                }     
	            } 
	 
	            if(!$isEnter){ 
	                echo "没有做任何修改"; 
	                echo "<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	            } 
	 
	        }else{ 
	            echo "请输入需要修改的单词"; 
	            echo "<br/><a href=&#39;wordView.php&#39;>返回继续操作</a>"; 
	            exit(); 
	        } 
	    } 
	    //开源代码phprm.com 
	    //获取节点的文本值 
	    function getNodeVal(&$MyNode,$tagName){ 
	        return $MyNode->getElementsByTagName($tagName)->item(0)->nodeValue; 
	    } 
	 
로그인 후 복사

words.xml,代码如下:

<?xml version="1.0" encoding="utf-8" 
	<words><word><en>boy</en><zh>男孩</zh></word><word><en>girl</en><zh>女孩</zh></word><word><en>fire</en><zh>火</zh></word><word><en>word</en><zh>词库</zh></word></words> 
로그인 후 복사

永久地址:

转载随意~请带上教程地址吧^^

본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)