您的位置:首页 > 编程语言 > PHP开发

Laravel 调用快递100 进行实时快递查询和物流订阅

2017-09-26 18:04 351 查看
/**
*获取快递的拼音
*$getcom 快递的中文
*/
public function getshipping($getcom)
{
switch ($getcom){
case "申通":
$postcom = 'shentong';
break;
case "圆通":
$postcom = 'yuantong';
break;
case "顺丰":
$postcom = 'shunfeng';
break;
case "韵达":
$postcom = 'yunda';
break;
case "中通":
$postcom = 'zhongtong';
break;
default:
$postcom = '';
}
return $postcom;
}

/**
* 获取订单物流信息订阅 一点点返回回来
*/
public function getOrder($com,$ship_num,$to,$key){
$post_data = array();
$post_data["schema"] = 'json' ;
$post_data["param"] = '{"company":"'.$com.'", "number":"'.$ship_num.'","from":"", "to":"'.$to.'", "key":"'.$key.'","parameters":{"callbackurl":"'.env('APP_CALLBACK').'"}}';
//        return $post_data['param'];
$url='http://www.kuaidi100.com/poll';
$o="";
foreach ($post_data as $k=>$v)
{
$o.= "$k=".urlencode($v)."&";		//默认UTF-8编码格式
}

$post_data=substr($o,0,-1);
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $post_data);
$result = curl_exec($ch);		//返回提交结果,格式与指定的格式一致(result=true代表成功)
return $result;
}

/**
* 获取实时获取订单物流 什么时候打开的..就什么时候返回数据
*/
public function allTimeOrder($com,$order,$to){
$post_data = array();
$post_data["customer"] = env('APP_CUSTOMER');//平台的客户编码
$key= env('APP_SHIPKEY') ;//平台key
$post_data["param"] = '{"com":"'.$com.'","num":"'.$order.'","to":"'.$to.'" }';
$url='http://poll.kuaidi100.com/poll/query.do';
$post_data["sign"] = md5($post_data["param"].$key.$post_data["customer"]);
$post_data["sign"] = strtoupper($post_data["sign"]);
$o="";
foreach ($post_data as $k=>$v)
{
$o.= "$k=".urlencode($v)."&";		//默认UTF-8编码格式
}
$post_data=substr($o,0,-1);

$ch = curl_init ();
curl_setopt ( $ch, CURLOPT_URL, $url );//地址
curl_setopt ( $ch, CURLOPT_POST, 1 );//请求方式为post
curl_setopt ( $ch, CURLOPT_HEADER, 0 );//不打印header信息
curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );//返回结果转成字符串
curl_setopt ( $ch, CURLOPT_POSTFIELDS, $post_data );//post传输的数据。
$return = curl_exec ( $ch );
curl_close ( $ch );
return json_decode($return);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: