xml 通过正则抓取字段
$str = '<xml>
<appid><![CDATA[wxd49ea66070209a6e]]></appid>
<bank_type><![CDATA[CFT]]></bank_type>
<cash_fee><![CDATA[1]]></cash_fee>
<fee_type><![CDATA[CNY]]></fee_type>
<is_subscribe><![CDATA[Y]]></is_subscribe>
<mch_id><![CDATA[1497568502]]></mch_id>
<nonce_str><![CDATA[nwuqfmxz4gep7b2fk6svun03p12l04rb]]></nonce_str>
<openid><![CDATA[oS_Kl1UfWDOyZ37Aov2cJfg4dogc]]></openid>
<out_trade_no><![CDATA[20180130195025526]]></out_trade_no>
<result_code><![CDATA[SUCCESS]]></result_code>
<return_code><![CDATA[SUCCESS]]></return_code>
<sign><![CDATA[9FFE299F266420606B6FA25ED2E3ABE1]]></sign>
<time_end><![CDATA[20180130195102]]></time_end>
<total_fee>1</total_fee>
<trade_type><![CDATA[NATIVE]]></trade_type>
<transaction_id><![CDATA[4200000071201801303667079420]]></transaction_id>
</xml>';
$arr = array();
$xmlTag = array(
'appid','bank_type','cash_fee','fee_type','is_subscribe','mch_id',
'nonce_str','openid','out_trade_no','result_code','return_code','sign',
'time_end','total_fee','trade_type','transaction_id'
);
foreach($xmlTag as $x){
//echo $x;
preg_match_all("/<".$x.">.*<\/".$x.">/",$str,$temp);
$arr[$x] = $temp[0][0];
} //去除XML标签并组装数据
dump($arr);
$data = array();
foreach($arr as $key => &$value) {
$temp_a = explode('<'.$key.'>'.'<![CDATA[', $value);
$str_len = strlen("]]</".$key.">\"");// 该字符串长度;
$v = substr($temp_a[1],0,-$str_len);
$value = $v;
// dump($v);
}
dump($arr);
echo $arr['appid'];
exit; -----------------------------------------------------------------------------------------
array(16) {
["appid"] => string(45) "<appid><![CDATA[wxd49ea66070209a6e]]></appid>"
["bank_type"] => string(38) "<bank_type><![CDATA[CFT]]></bank_type>"
["cash_fee"] => string(34) "<cash_fee><![CDATA[1]]></cash_fee>"
["fee_type"] => string(36) "<fee_type><![CDATA[CNY]]></fee_type>"
["is_subscribe"] => string(42) "<is_subscribe><![CDATA[Y]]></is_subscribe>"
["mch_id"] => string(39) "<mch_id><![CDATA[1497568502]]></mch_id>"
["nonce_str"] => string(67) "<nonce_str><![CDATA[nwuqfmxz4gep7b2fk6svun03p12l04rb]]></nonce_str>"
["openid"] => string(57) "<openid><![CDATA[oS_Kl1UfWDOyZ37Aov2cJfg4dogc]]></openid>"
["out_trade_no"] => string(58) "<out_trade_no><![CDATA[20180130195025526]]></out_trade_no>"
["result_code"] => string(46) "<result_code><![CDATA[SUCCESS]]></result_code>"
["return_code"] => string(46) "<return_code><![CDATA[SUCCESS]]></return_code>"
["sign"] => string(57) "<sign><![CDATA[9FFE299F266420606B6FA25ED2E3ABE1]]></sign>"
["time_end"] => string(47) "<time_end><![CDATA[20180130195102]]></time_end>"
["total_fee"] => string(24) "<total_fee>1</total_fee>"
["trade_type"] => string(43) "<trade_type><![CDATA[NATIVE]]></trade_type>"
["transaction_id"] => string(73) "<transaction_id><![CDATA[4200000071201801303667079420]]></transaction_id>"
}
array(16) {
["appid"] => string(18) "wxd49ea66070209a6e"
["bank_type"] => string(3) "CFT"
["cash_fee"] => string(1) "1"
["fee_type"] => string(3) "CNY"
["is_subscribe"] => string(1) "Y"
["mch_id"] => string(10) "1497568502"
["nonce_str"] => string(32) "nwuqfmxz4gep7b2fk6svun03p12l04rb"
["openid"] => string(28) "oS_Kl1UfWDOyZ37Aov2cJfg4dogc"
["out_trade_no"] => string(17) "20180130195025526"
["result_code"] => string(7) "SUCCESS"
["return_code"] => string(7) "SUCCESS"
["sign"] => string(32) "9FFE299F266420606B6FA25ED2E3ABE1"
["time_end"] => string(14) "20180130195102"
["total_fee"] => bool(false)
["trade_type"] => string(6) "NATIVE"
["transaction_id"] => &string(28) "4200000071201801303667079420"
}
wxd49ea66070209a6e
xml 通过正则抓取字段的更多相关文章
- java中使用 正则 抓取邮箱
我们来抓取豆瓣网的邮箱吧!把这个页面的所有邮箱都抓取下来 如https://www.douban.com/group/topic/8845032/: 代码如下: package cn.zhangzon ...
- Python爬虫【三】利用requests和正则抓取猫眼电影网上排名前100的电影
#利用requests和正则抓取猫眼电影网上排名前100的电影 import requests from requests.exceptions import RequestException imp ...
- 正则抓取网页所有href和src
根据抓取的页面,用正则来匹配页面href和src string UserAgent = "Mozilla/5.0 (Windows NT 5.2; rv:29.0) Gecko/201001 ...
- 使用Request+正则抓取猫眼电影(常见问题)
目前使用Request+正则表达式,爬取猫眼电影top100的例子很多,就不再具体阐述过程! 完整代码github:https://github.com/connordb/Top-100 总结一下,容 ...
- 使用PHP的正则抓取页面中的网址
最近有一个任务,从页面中抓取页面中所有的链接,当然使用PHP正则表达式是最方便的办法.要写出正则表达式,就要先总结出模式,那么页面中的链接会有几种形式呢? 链接也就是超级链接,是从一个元素(文字. ...
- 调用 CURL 使用正则抓取信息
Class MyCurl{ protected $_pdo; //构造方法 链接数据库 public function __construct(){ $this->_pdo ...
- (python3爬虫实战-第一篇)利用requests+正则抓取猫眼电影热映口碑榜
今天是个值得纪念了日子,我终于在博客园上发表自己的第一篇博文了.作为一名刚刚开始学习python网络爬虫的爱好者,后期本人会定期发布自己学习过程中的经验与心得,希望各位技术大佬批评指正.以下是我自己做 ...
- Java正则抓取email
实现思路 1.使用Java.net.URL对象,绑定网络上某一个网页的地址 2.通过java.net.URL对象的openConnection()方法获得一个HttpConnection对象 3.通过 ...
- 我也来学着写写WINDOWS服务-解析xml抓取数据并插入数据库
项目告一段落,快到一年时间开发了两个系统,一个客户已经在试用,一个进入客户测试阶段,中间突然被项目经理(更喜欢叫他W工)分派一个每隔两小时用windows服务去抓取客户提供的外网xml,解析该xml, ...
随机推荐
- 从Softmax回归到Logistic回归
Softmax回归是Logistic回归在多分类问题上的推广,是有监督的. 回归的假设函数(hypothesis function)为,我们将训练模型参数,使其能够最小化代价函数: 在Softmax回 ...
- 理解glance
摘要: 本节介绍 OpenStack Image 服务 Glance 的基本概念. OpenStack 由 Glance 提供 Image 服务. 理解 Image 要理解 Image Service ...
- Windows网络编程系列教程之四:Select模型
讲一下套接字模式和套接字I/O模型的区别.先说明一下,只针对Winsock,如果你要骨头里挑鸡蛋把UNIX下的套接字概念来往这里套,那就不关我的事. 套接字模式:阻塞套接字和非阻塞套接字.或者叫同步套 ...
- 软工网络15团队作业4——Alpha阶段敏捷冲刺-1
各个成员在 Alpha 阶段认领的任务 成员 Alpha 阶段认领的任务 肖世松 编写界面设计代码 杨泽斌 服务器连接与配置 叶文柠 数据库连接与配置 谢庆圆 编写功能板块代码 林伟航 编写功能板块代 ...
- python redis插件安装
#tar xvzf redis-py-2.2.1.tar.gz #cd redis-py-2.2.1 #python setup.py install 附件: https://app.yinxia ...
- arp_filter/arp_ignore/rp_filter
下面这段代码应该是arp_ignore/arp_filter的最好的注脚;在ARP_ignore通过的情况下,我再去判断ARP_filter,这个ARP_filter其实就是为了判断,当数据包再出去的 ...
- 在ios 上 按钮 disabled 样式显示异常
将input,button或textarea设置为disabled后,在iphone手机上样式将被覆写-webkit-appearance:none; 文字的颜色还是灰色. 原本在android 上 ...
- 【python】 requirements使用方法
记得导入导出包的时候要想激活虚拟环境.1.导出requirements方法pip freeze > requirements.txt 2.安装requirements方法pip install ...
- htm中的 src未指定具体路径的话 默认查找当前文件夹
htm中的 src未指定具体路径的话 默认查找当前文件夹
- BZOJ 2333 棘手的操作(离线+线段树+带权并查集)
这题搞了我一天啊...拍不出错原来是因为极限数据就RE了啊,竟然返回WA啊.我的线段树要开8倍才能过啊... 首先可以发现除了那个加边操作,其他的操作有点像线段树啊.如果我们把每次询问的联通块都放在一 ...