php 读取xml文档
代码如下 | 复制代码 |
$xml = < < < xml out: [command_name] => provision ) ) |
<?
<?xml version="1.0′ encoding="utf-8′?>
<class>
<student>
<id>3</id>
<name>张三</name>
</student>
<student>
<id>5</id>
<name>李四</name>
</student>
</class>
$url="http://mb.111cn.net/ws.php?q=content";
$dom = new domdocument();
$dom->load($url);
//print"<pre>";
//print( $dom->savexml());
$dictarray = $dom->getelementsbytagname("dict");
foreach( $dictarray as $dict ) {
$key = $dict->getelementsbytagname("key");
$key=$key->item(0)->nodevalue;
$key= iconv("utf-8","gb2312",$key); //注意要转码对于中文,因为xml默认为utf-8格式
echo ("***输出>key>的内容:****:".$key);
$lang = $dict->getelementsbytagname("lang");
$lang = utf8_decode($lang->item(0)->nodevalue);
echo "<br>";
echo ("***输出>lang>的内容:****:".$lang);
}
方法三
$fp=fsockopen("xxx.xxx.com", 80, $errno, $errstr, 30);
if($fp){
$out = "get /abc.xml?key=value http/1.1 ";
$out .= "host: xxx.xxx.com ";
$out.= 'user_agent: xml-rpc client ';
$out.='content-type: text/xml ';
$out .= "connection: close ";
fwrite($fp,$out);
while(!@feof($fp)){
$result.=@fgets($fp,1024);
}
fclose($fp);
}
echo $result;
代码如下 | 复制代码 |
function: addcomment adds a comment. parameters: $data - associative array of data, must contain 'name', 'website', 'comment', 'date', 'user_ip', 'user_agent', and 'spam'. returns: id of the new comment. <?xml version="1.0" encoding="utf-8"?> <!doctype messages [ <!element messages (message)*> <!element message (name , website? , comment , date , user_ip? , user_agent? , spam)> ]> <messages> </messages> */ public function addcomment($data) { $xml = new simplexmlelement($this->getcontents(true)); $message = $xml->addchild('message'); $id = $this->generateid(); $message->addattribute('mid', $id); foreach ($data as $key => $value) { $message->addchild($key, htmlspecialchars($value, ent_quotes)); } $this->putcontents($xml->asxml()); return $id; } |
代码如下 | 复制代码 |
调用方法 if(!function_exists('xml_parser_create')) { //get the xml parser of php教程 - php must have this module for the parser to work if(!$xml_values) return;//hmm... //initializations $current = &$xml_array; //refference //go through the tags. //this command will extract these variables into the foreach scope $result = array(); if(isset($value)) { //set the attributes too. //see tag status and do the needed. $current = &$current[$tag]; } else { //there was another element with the same tag name if(isset($current[$tag][0])) {//if there is a 0th element it is already an array if(isset($current[$tag.'_attr'])) { //the attribute of the last(0th) tag must be moved as well } } elseif($type == "complete") { //tags that ends in 1 line '<tag />' } else { //if taken, put all things inside a list(array) // ...push the new element into that array. if($priority == 'tag' and $get_attributes and $attributes_data) { } else { //if it is not an array... $current[$tag]['0_attr'] = $current[$tag.'_attr']; if($attributes_data) { } elseif($type == 'close') { //end of tag '</tag>' return($xml_array); ######################################################################################################### class parserxml } if(!$xmlreaderror){ $children [$vals [$i]['tag']][] = $this->getchildren ($vals, $i, $type); ?> |
代码如下 | 复制代码 |
function cleanstring($str){ $filename = 'data/'.'99999'.$t.'_'.cleanstring($name).'.xml'; |
//print "xml=".$xml; 这里生成xml我们用了很简单的方法就是利用php fopen 创建一个文档,并保存成xml格式的。
本文章为你提供一款php xml读取类,很简单的一个xml分析类了,它可读取指它xml文档,并且输出或取得指定节点的xml数据哦。代码如下 | 复制代码 |
class dom { protected $_dom = null; public function __construct($xmlfile = '',$ver = '',$encoding = '') { $this -> _dom = ($ver && $encoding)? new domdocument($ver,$encoding):new domdocument(); $xml = !$xmlfile?file_get_contents('php://input'):file_get_contents($xmlfile); $this -> _dom -> loadxml($xml); } public function getvalue($nodename) { $nodes = $this -> _dom -> getelementsbytagname($nodename); return null !== $nodes -> item(0)?$nodes -> item(0) -> nodevalue:false; } } |
//本xml类代码是利用了php domdocument来解析xml文档 ?>
相关文章
- 这篇文章主要介绍了C#从数据库读取图片并保存的方法,帮助大家更好的理解和使用c#,感兴趣的朋友可以了解下...2021-01-16
- 在php中解析xml文档用专门的函数domdocument来处理,把json在php中也有相关的处理函数,我们要把数据xml 数据存到一个数据再用json_encode直接换成json数据就OK了。...2016-11-25
- 这篇文章主要介绍了c# 如何对CSV文件操作,帮助大家更好的理解和学习C#,感兴趣的朋友可以了解下...2020-11-03
- 本文主要介绍了python读取和保存mat文件的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-08-25
- 首先如果要在程序中使用sdcard进行存储,我们必须要在AndroidManifset.xml文件进行下面的权限设置: 在AndroidManifest.xml中加入访问SDCard的权限如下: <!--...2016-09-20
- 在PS中像素大小、文档大小有什么区别呢,这个估计很多初学者不清楚,下面我来给大家讲解一下,希望对你有帮助。 1、像素大小 通常用于显示屏显示的图片大小的调整。菜...2016-09-14
- perl CPAN中有一个Tie-File 模块极大方便了对大文件的操作...2020-06-29
使用MSScriptControl 在 C# 中读取json数据的方法
下面小编就为大家带来一篇使用MSScriptControl 在 C# 中读取json数据的方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25- 这篇文章主要介绍了C#实现appSettings节点读取与修改的方法,是非常实用的技巧,需要的朋友可以参考下...2020-06-25
- 这篇文章主要介绍了C#生成Word文档代码示例,本文直接给出代码实例,需要的朋友可以参考下...2020-06-25
- 本文主要介绍了Vue组件文档生成工具库的方法,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-08-11
- 这篇文章主要介绍了golang文件读取-按指定BUFF大小读取方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-12-22
- 本文主要介绍了Java读取PDF中的表格的方法示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-10-22
- 这篇文章主要介绍了R语言读取csv文件出错的解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 下在看一个利用fopen,file_get_contents读取本地服务器中.php文件的代码并显示的一些方法总结 如我有两个文件a.php,b.php。 a.php文件中的语句是: 代码如...2016-11-25
- 这篇文章主要介绍了Windows系统中使用C#读取文本文件内容的小示例,包括一次一行地读取文本文件的方法,需要的朋友可以参考下...2020-06-25
- 这篇文章主要为大家介绍了Java开发SpringBoot如何集成接口文档的实现示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步...2021-10-28
- 这篇文章主要介绍了python 根据excel中颜色区分读取的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-06
- $doc = new domdocument('1.0'); // we want a nice output $doc->formatoutput = true; 代码如下 复制代码 $root = $doc->createelement('bo...2016-11-25
- 这篇文章主要介绍了mybatis-plus读取JSON类型的方法实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-09-25