【PHP原生】xml和数组互转(微信支付签名算法)
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了【PHP原生】xml和数组互转(微信支付签名算法),小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含892字,纯文字阅读大概需要2分钟。
内容图文
![【PHP原生】xml和数组互转(微信支付签名算法)](/upload/InfoBanner/zyjiaocheng/1116/9fc91d48a2b648c68517c8cf0202a4ef.jpg)
数组转XML
publicfunction arrayToXml($arr) { $xml ="<xml>"; foreach($arras$key => $val){ if(is_numeric($val)){ $xml .="<". $key .">". $val ."</". $key .">"; }else$xml .="<". $key ."><![CDATA[". $val ."]]></". $key .">"; } $xml .="</xml>"; return$xml; }
XML转数组
publicfunction xmltoarray($xml) { //禁止引用外部xml实体 libxml_disable_entity_loader(true); $xmlstring = simplexml_load_string($xml,‘SimpleXMLElement‘, LIBXML_NOCDATA); $val = json_decode(json_encode($xmlstring),true); return$val; }
微信支付签名sign算法
// 生成签名 //$data参与签名的关联数组,$key商户appkey publicfunction createSign(array$data,string$key) { ksort($data); //参与签名的数组重新按升序排列$str =‘‘; foreach($dataas$k => $v){ $str .= $k .‘=‘. $v .‘&‘; //数组转换成URL参数形式} $str .=‘key=‘. $key; //拼接商户秘钥returnstrtoupper(md5($str)); //MD5加密并转换成大写字母 }
原文:https://www.cnblogs.com/php99/p/9797157.html
内容总结
以上是互联网集市为您收集整理的【PHP原生】xml和数组互转(微信支付签名算法)全部内容,希望文章能够帮你解决【PHP原生】xml和数组互转(微信支付签名算法)所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。