本文目录一览:
PHP怎么解析微信支付结果返回的xml
php解析xml报文的方法是DOMDocument:
解析方法如下:
$xmlstring = XML
?xml version=’1.0′?
document
cmd attr=’default’login/cmd
loginimdonkey/login
/document
XML;
$dom = new DOMDocument();
$dom-loadXML($xmlstring);
print_r(getArray($dom-documentElement));
function getArray($node) {
$array = false;
if ($node-hasAttributes()) {
foreach ($node-attributes as $attr) {
$array[$attr-nodeName] = $attr-nodeValue;
}
}
if ($node-hasChildNodes()) {
if ($node-childNodes-length == 1) {
$array[$node-firstChild-nodeName] = getArray($node-firstChild);
} else {
foreach ($node-childNodes as $childNode) {
if ($childNode-nodeType != XML_TEXT_NODE) {
$array[$childNode-nodeName][] = getArray($childNode);
}
}
}
} else {
return $node-nodeValue;
}
return $array;
}
php中,loadxml()用法
1.定义和用法
simplexml_load_file() 函数把 XML 文档载入对象中。
如果失败,则返回 false。
2.语法
simplexml_load_file(file,class,options,ns,is_prefix)参数 描述
file 必需。规定要使用的 XML 文档。
class 可选。规定新对象的 class。
options 可选。规定附加的 Libxml 参数。
ns 可选。
is_prefix 可选。
3.实例
例子 1. Interpret an XML document
代码如下
?php
// The file test.xml contains an XML document with a root element
// and at least an element /[root]/title.
if (file_exists(‘test.xml’)) {
$xml = simplexml_load_file(‘test.xml’);
var_dump($xml);
} else {
exit(‘Failed to open test.xml.’);
}
?
This script will display, on success:
SimpleXMLElement Object
(
[title] = Example Title
…
)
如何用php生成xml文件 高手进入 有加分
可以使用php里的dom,如下:
$xmlStr=[文件位置];
$dom
=
new
DOMDocument(‘1.0’);
$dom
-loadXML($xmlStr);
//根
$vogue=$dom-createElement(‘vogue’);
$dom-appendChild($vogue);
//第一级子目录
$level0=$dom-createElement(‘level0’);
//第一级子目录的属性
$attr=$dom-createAttribute(‘parentTypeID’);
$attr-appendChild($dom-createTextNode(‘-1’));
……..
//保存
$dom-saveXML($xmlStr);
但是我更推荐使用print来打印后输入文件。
因为dom的输出无法分行,样例如下:
?php
$books
=
array();
$books
[]
=
array(
‘title’
=
‘PHP
Hacks’,
‘author’
=
‘Jack
Herrington’,
‘publisher’
=
“O’Reilly”
);
$books
[]
=
array(
‘title’
=
‘Podcasting
Hacks’,
‘author’
=
‘Jack
Herrington’,
‘publisher’
=
“O’Reilly”
);
?
books
?php
foreach(
$books
as
$book
)
{
?
book
title?php
echo(
$book[‘title’]
);
?/title
author?php
echo(
$book[‘author’]
);
?
/author
publisher?php
echo(
$book[‘publisher’]
);
?
/publisher
/book
?php
}
?
/books
原创文章,作者:TRNL,如若转载,请注明出处:https://www.506064.com/n/133590.html