导航:首页 > 编程语言 > phpelements

phpelements

发布时间:2024-05-30 22:23:45

‘壹’ php怎么解析微信支付结果返回的xml

PHP解析微信支付结果返回的xml的方法是通过自定义方法和第三方组件DomDocument实现的。
1、解析代码如下:
<?PHP
header("Content-type:text/html; Charset=utf-8");
$url = "http://www.google.com/ig/api?weather=shenzhen";

// 加载XML内容
$content = file_get_contents($url);
$content = get_utf8_string($content);
$dom = DOMDocument::loadXML($content);
/*
此处也可使用如下所示的代码,
$dom = new DOMDocument();
$dom->load($url);
*/

$elements = $dom->getElementsByTagName("current_conditions");
$element = $elements->item(0);
$condition = get_google_xml_data($element, "condition");
$temp_c = get_google_xml_data($element, "temp_c");
echo '天气:', $condition, '<br />';
echo '温度:', $temp_c, '<br />';

function get_utf8_string($content) { // 将一些字符转化成utf8格式
$encoding = mb_detect_encoding($content, array('ASCII','UTF-8','GB2312','GBK','BIG5'));
return mb_convert_encoding($content, 'utf-8', $encoding);
}

function get_google_xml_data($element, $tagname) {
$tags = $element->getElementsByTagName($tagname); // 取得所有的$tagname
if ($items->length > 1) {
return $items;
}
$tag = $tags->item(0); // 获取第一个以$tagname命名的标签
if ($tag->hasAttributes()) { // 获取data属性
$attribute = $tag->getAttribute("data");
return $attribute;
}else {
return false;
}
}
?>
2、返回支付的xml报文:
<?xml version="1.0"?>
<xml_api_reply version="1">
<weather mole_id="0" tab_id="0" mobile_row="0" mobile_zipped="1" row="0" section="0" >
<forecast_information>
<city data="Shenzhen, Guangdong"/>
<postal_code data="shenzhen"/>
<latitude_e6 data=""/>
<longitude_e6 data=""/>
<forecast_date data="2009-10-05"/>
<current_date_time data="2009-10-04 05:02:00 +0000"/>
<unit_system data="US"/>
</forecast_information>
<current_conditions>
<condition data="Sunny"/>
<temp_f data="88"/>
<temp_c data="31"/>
<humidity data="Humidity: 49%"/>
<icon data="/ig/images/weather/sunny.gif"/>
<wind_condition data="Wind: mph"/>
</current_conditions>
</weather>
</xml_api_reply>
3、打印解析结果:

print $html;

‘贰’ 如何通过PHP生成和获取XML格式数据

1自己拼,XML编码

<?php
header('Content-type:text/xml');
echo "<?xml version='1.0' encoding='utf-8'>";
echo "<book>";
echo "<PHP>";
echo "<name>PHP程序开发范例宝典</name>";
echo "<price 单位='元/本'>89.00</price>";
echo "<date>2007-09-01</date>";
echo "</PHP>";
echo "</book>";
?>

拼接的效果

‘叁’ PHP锅氱殑缃戦〉涓鏄濡备綍纭瀹氶〉闱涓钖勫厓绱犱綅缃镄勫晩

鏂规硶1锛氩湪浠绘剰娴忚埚櫒涓镓揿紑缃戦〉锛岀劧钖庡崟鍑诲彸阌->镆ョ湅缃戦〉婧愪唬镰侊纴灏卞彲浠ョ湅鍒颁简銆

浣嗘槸镟村ソ镄勬柟娉曟槸锛
鏂规硶2锛氭墦寮Google Chrome锛堟垨钥呮槸Chromium锛夛纴镓揿紑杩欎釜缃戦〉锛屾寜F12寮钖瀹℃煡鍏幂礌锛岀偣Elements锛埚叾瀹炶繖涓鏄榛樿ょ殑锛夛纴灏变细鐪嫔埌缃戦〉镄勪唬镰佷简銆

濡傛灉椤甸溃镄勬煇浜涢儴鍒嗙敱AJAX锷ㄦ佺敓鎴愶纴鐢ㄦ柟娉1灏变细鐪嬩笉鍒帮纴鍙鑳界湅鍒颁竴鍫呙avaScript浠g爜锛岃繖镞跺彧鑳戒娇鐢ㄦ柟娉2銆

‘肆’ 使用php循环出xml中多个相同重复的标签

重复的 xml 元素节点可以用 foreach 循环取出重复元素。

示例:

// $xmlData = file_get_contents('items.xml');

$xmlElement=simplexml_load_string($xmlData, 'SimpleXMLElement', 'LIBXML_NOCDATA');

$elements = $xmlElement->CustAcctId;

foreach ($elements as $element) {

var_mp($element);

}

提示:使用simplexml_load_string($xmlString, 'SimpleXMLElement', LIBXML_NOCDATA) 解析 xml 字符串,如果是 xml 文件,可以 file_get_contents 读取文件。

阅读全文

与phpelements相关的资料

热点内容
phparray源码 浏览:1000
安卓手机反应有点慢怎么办 浏览:703
c语言怎么访问服务器并获取数据 浏览:112
怎么下载三维app 浏览:75
把pdf中的图片导出到excel 浏览:503
php操作redis实例 浏览:141
苹果app怎么绑卡 浏览:976
便签加密的笔记在哪里打开 浏览:842
php截取时间函数 浏览:867
lol手游版怎么下载安卓版 浏览:81
10年程序员做地摊 浏览:628
安卓手机拍摄慢动作怎么设置 浏览:482
中国程序员加油 浏览:174
python去哪个城市比较多 浏览:761
闪迪u盘加密初始密码 浏览:773
房屋办理解压需要契税和发票吗 浏览:891
丽江易学java高级程序员 浏览:663
程序员木兰教程 浏览:667
pythontkinter按钮 浏览:441
如何快捷录音安卓 浏览:9