菜鸟电子面单 类 php
2021/6/1 22:21:11
本文主要是介绍菜鸟电子面单 类 php,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
<?php class CainiaoHelper{ //public $debug=false; public $debug=true; function __construct(){ } public function debug($msg) { if ($this->debug) { print '<div style="border: 1px solid red; padding: 0.5em; margin: 0.5em;">'; echo "<pre>"; print_r($msg); echo "</pre>"; print '</div>'; } } private function curl_get_contents($url,$data = array(), $https = false) { $results['error'] = ''; $results['status'] = 0; $results['data'] = array(); $user_agent = $_SERVER['HTTP_USER_AGENT']; $curl = curl_init(); // 启动一个CURL会话 if( !empty($data) && is_array($data) ) { curl_setopt($curl, CURLOPT_POST, 1); // 发送一个常规的Post请求 //curl_setopt($curl, CURLOPT_POSTFIELDS, $data); // Post提交的数据包 curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); } if($https ) { curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0); // 对认证证书来源的检查 curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 1); // 从证书中检查SSL加密算法是否存在 curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1); // 使用自动跳转 //curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);//这个是重点。 } curl_setopt($curl, CURLOPT_URL, $url); // 要访问的地址 curl_setopt($curl, CURLOPT_TIMEOUT, 30); // 设置超时限制防止死循环 curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/x-www-form-urlencoded')); curl_setopt($curl, CURLOPT_HEADER, 0); // 显示返回的Header区域内容 curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); // 获取的信息以文件流的形式返回 curl_setopt($curl, CURLOPT_USERAGENT,$user_agent); // 模拟用户使用的浏览器 curl_setopt($curl, CURLOPT_AUTOREFERER, 1); // 自动设置Referer $results['data']= curl_exec($curl); // 执行操作 if (curl_errno($curl)) { $results['error'] = curl_error($curl); //捕抓异常 } curl_close($curl); // 关闭CURL会话 return $results['data']; // 返回数据 } public function curl_http_post($url, $data) { return $this->curl_get_contents($url,$data); } public function curl_http_get($url) { return $this->curl_get_contents($url,array()); } public function curl_https_post($url, $data) { return $this->curl_get_contents($url,$data,true); } public function curl_https_get($url) { return $this->curl_get_contents($url,array(),true); } } class Cainiao extends CainiaoHelper { public $Urlgateway = "http://link.cainiao.com/gateway/link.do"; public $AppKey; public $SecretKey; public $Token; public $debug=false; public $ishttps=false; function __construct(){ parent::__construct(); } /** 订单渠道平台编码:淘宝(TB)、天猫(TM)、京东(JD)、当当(DD)、 拍拍(PP)、易讯(YX)、ebay(EBAY)、QQ网购(QQ) 、亚马逊(AMAZON)、 苏宁(SN)、国美(GM)、唯品会(WPH)、聚美(JM)、乐蜂(LF)、蘑菇街(MGJ) 、 聚尚(JS)、拍鞋(PX)、银泰(YT)、1号店(YHD)、 凡客(VANCL)、邮乐(YL)、优购(YG)、阿里 巴巴(1688)、其他(OTHERS) */ private function getDigest($apiContent){ $combine = md5($apiContent.$this->SecretKey,true); return base64_encode($combine); } public function getCpCode(){ $A=array( 'YTO'=>'圆通', 'HTKY'=>'百世快递', 'YUNDA'=>'韵达', 'GTO'=>'国通', 'DBKD'=>'德邦快递 ', 'EMS'=>'EMS', 'POSTB'=>'邮政快递包裹', 'STO'=>'申通', 'SF'=>'顺丰', 'ZTO'=>'中通 ', 'ZJS'=>'宅急送', ); return $A; } /** * 获取发货地,CP开通状态,账户的使用情况 Version:v1.0 * Enter description here ... */ public function Tms_Waybill_Subscription_Query($input='YTO'){ if(!$input) return false; $A['logistics_interface']='{"cpCode":"'.$input.'"}'; $A[data_digest]=base64_encode(md5($A[logistics_interface].$this->SecretKey,true)); $A[msg_type]='TMS_WAYBILL_SUBSCRIPTION_QUERY'; $A[logistic_provider_id]=$this->Token; if($this->ishttps){ return $s=$this->curl_https_post($this->Urlgateway,$A); }else{ return $s=$this->curl_http_post($this->Urlgateway,$A); } } public function GET_CLOUDPRINT_STANDARD_TEMPLATES($input='YTO'){ if(!$input) return false; $A['logistics_interface']='{"cpCode":"'.$input.'"}'; $A[data_digest]=base64_encode(md5($A[logistics_interface].$this->SecretKey,true)); $A[msg_type]='CLOUDPRINT_STANDARD_TEMPLATES'; $A[logistic_provider_id]=$this->Token; if($this->ishttps){ return $s=$this->curl_https_post($this->Urlgateway,$A); }else{ return $s=$this->curl_http_post($this->Urlgateway,$A); } } /** * 电子面单云打印取号接口 Version:v1.0 * Enter description here ... * @param unknown_type $input */ public function Tms_Waybill_Get($input='') { if(!$input) return false; $A[logistics_interface]=$input; $A[data_digest]=base64_encode(md5($A[logistics_interface].$this->SecretKey,true)); $A[msg_type]='TMS_WAYBILL_GET'; $A[logistic_provider_id]=$this->Token; if($this->ishttps){ return $s=$this->curl_https_post($this->Urlgateway,$A); }else{ return $s=$this->curl_http_post($this->Urlgateway,$A); } } /** * 电子面单云打印更新接口 Version:v1.0 * Enter description here ... * @param unknown_type $input */ public function Tms_Waybill_Update($input='') { if(!$input) return false; $A[logistics_interface]=$input; $A[data_digest]=base64_encode(md5($A[logistics_interface].$this->SecretKey,true)); $A[msg_type]='TMS_WAYBILL_UPDATE'; $A[logistic_provider_id]=$this->Token; if($this->ishttps){ return $s=$this->curl_https_post($this->Urlgateway,$A); }else{ return $s=$this->curl_http_post($this->Urlgateway,$A); } } /** * ISV电子面单取消接口 Version:v1.0 * Enter description here ... * @param unknown_type $input */ public function Tms_Waybill_Discard($input='') { if(!$input) return false; $A[logistics_interface]=$input; $A[data_digest]=base64_encode(md5($A[logistics_interface].$this->SecretKey,true)); $A[msg_type]='TMS_WAYBILL_DISCARD'; $A[logistic_provider_id]=$this->Token; if($this->ishttps){ return $s=$this->curl_https_post($this->Urlgateway,$A); }else{ return $s=$this->curl_http_post($this->Urlgateway,$A); } } }
这篇关于菜鸟电子面单 类 php的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-07-03php客户端微信小程序根据分享携带参数进入指定页面-icode9专业技术文章分享
- 2024-07-02phpstrom链接ftp 提示上传成功 但是ftp代码没变-icode9专业技术文章分享
- 2024-06-30百度空间安装易优,如何去除URL中的index.php-icode9专业技术文章分享
- 2024-06-30宝塔Linux服务器隐藏index.php-icode9专业技术文章分享
- 2024-03-29env: php: no such file or directory
- 2024-03-01php foreach break
- 2024-02-26Exception参数 php-icode9专业技术文章分享
- 2023-12-30PHP文件批量上传-icode9专业技术文章分享
- 2023-12-30thinkphp6 withJoin-icode9专业技术文章分享
- 2023-12-27MagicArray:像php一样,让Go业务代码不再卷!