本文目錄一覽:
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/zh-hant/n/133590.html