首页 >后端开发 >php教程 >PHP 通过单号查询快递( 申通、EMS、顺丰、圆通、中通、韵达、天天、汇通、全峰、德邦、宅急送)_PHP教程

PHP 通过单号查询快递( 申通、EMS、顺丰、圆通、中通、韵达、天天、汇通、全峰、德邦、宅急送)_PHP教程

WBOY
WBOY原创
2016-07-13 09:48:183396浏览

PHP 通过单号查询快递( 申通、EMS、顺丰、圆通、中通、韵达、天天、汇通、全峰、德邦、宅急送)

 

 

<!--?php
header(&#39;content-type:text/html;charset=utf-8&#39;);
/**
* @param $url String
* @param array $post
* @param array $options
* @return mixed at most json
*/
function curl_get($url, array $post = NULL, array $options = array())
{
	$defaults = array(
		CURLOPT_HEADER =--> 0,
		CURLOPT_URL => $url,
		CURLOPT_FRESH_CONNECT => 1,
		CURLOPT_RETURNTRANSFER => 1,
		CURLOPT_FORBID_REUSE => 1,
		CURLOPT_TIMEOUT => 4,
		CURLOPT_POSTFIELDS => http_build_query($post)
	);

	$ch = curl_init();
	curl_setopt_array($ch, ($options + $defaults));
	if( ! $result = curl_exec($ch))
	{
	trigger_error(curl_error($ch));
	}
	curl_close($ch);
	return $result;
}

//正确的返回格式 JSON
/**
* {"message":"ok","state":"3&Prime;,"data":[{"context":"已签收,签收人是【本人】",
* "time":"2013-12-15 11:02:26","ftime":"2013-12-15 11:02:26"},{"context":"
* 【湖南长沙雨花分公司】的派件员【林大自取分部82177562 电话(82171562)】正在派件",
* "time":"2013-12-14 21:43:38","ftime":"2013-12-14 21:43:38"},{"context":
* "快件已到达【湖南长沙雨花分公司】 扫描员是【汤建敏】上一站是【】","time":"2013-12-14
* 17:19:52","ftime":"2013-12-14 17:19:52"},{"context":"由【湖南长沙航空部】发往
* 【湖南长沙雨花分公司】","time":"2013-12-14 16:26:36","ftime":"2013-12-14 16:26:36"}
* ,{"context":"【浙江萧山公司】正在进行【装袋】扫描","time":"2013-12-12 18:59:17",
* "ftime":"2013-12-12 18:59:17"},{"context":"由【浙江萧山公司】发往【湖南长沙中转部】"
* ,"time":"2013-12-12 18:59:17","ftime":"2013-12-12 18:59:17"},{"context":"【浙江萧山公司】
* 的收件员【公司汉帛 】已收件","time":"2013-12-12 18:20:47","ftime":"2013-12-12 18:20:47"},
* {"context":"【浙江萧山公司】的收件员【公司汉帛 】已收件","time":"2013-12-12
* 14:56:21","ftime":"2013-12-12 14:56:21"}],"status":"200&Prime;,"com":"shentong","nu":
* "768064369802&Prime;,"condition":"F00&Prime;,"ischeck":"1&Prime;}
*/
//正确放回的格式 JSON
/**
* {"message":"ok","state":"3&Prime;,
* "data":[{"context":"微山县付村邮电支局:投递并签收
* 投递结果:他人签收代收","time":"2013-12-17 15:42:00",
* "ftime":"2013-12-17 15:42:00"},{"context":"微山县付村邮电支局:投递并签收",
* "time":"2013-12-17 09:47:00","ftime":"2013-12-17 09:47:00"}
* ,{"context":"微山县邮政局速递公司:离开处理中心,发往微山县付村邮电支局",
* "time":"2013-12-16 18:38:56","ftime":"2013-12-16 18:38:56"},
* {"context":"微山县邮政局速递公司:到达处理中心,来自金华市","time":"
* 2013-12-16 17:27:18","ftime":"2013-12-16 17:27:18"},{"context":
* "金华市:离开处理中心,发往枣庄市","time":"2013-12-14 23:57:43","ftime":
* "2013-12-14 23:57:43"},{"context":"金华市:到达处理中心,来自义乌市",
* "time":"2013-12-14 22:51:02","ftime":"2013-12-14 22:51:02"},
* {"context":"义乌市义乌市电子商务分公司:收寄","time":"2013-12-14 15:00:00",
* "ftime":"2013-12-14 15:00:00"}],"status":"200&Prime;,"com":"ems","nu":"5000655082802&Prime;,
* "condition":"F00&Prime;,"ischeck":"1&Prime;}
*/
//错误的格式 JSON
/**
* {"status":"201&Prime;,"message":"快递公司参数异常:单号不存在或者已经过期"}
*/
/**
* @param string $postid 快递单号
* @param string $type 快递类型
* shentong &mdash;> 申通
* ems &mdash;> EMS
* shunfeng &ndash;> 顺丰
* yuantong &ndash;> 圆通
* zhongtong &ndash;> 中通
* yunda &ndash;> 韵达
* tiantian &mdash;> 天天快递
* huitongkuaidi &ndash;> 汇通快递
* quanfengkuaidi &ndash;> 全峰快递
* debangwuliu &ndash;> 德邦物流
* zhaijisong &ndash;> 宅急送
* @return mixed json格式
*/

function Dquery($postid = &#39;268323324324&#39; , $type = &#39;shentong&#39;)
{
	$post_data = array (
	"type" => $type,
	"postid" => $postid ,
	"id" => "1",
	"valicode" => "",
	"temp" => &#39;0.7771608149632812&#39;
	) ;
	$url =&#39;http://www.kuaidi100.com/query&#39;;
	return curl_get($url,$post_data);
}



/**
* 申通快递
* @param string $postid String 快递单号
* @return mixed at most json
*/
function shentong($postid = &#39;229055602837&#39;)
{
	return Dquery($postid,&#39;shentong&#39;);
}



/**
* EMS
* @param string $postid 快递单号
* @return mixed JSON
*/
function EMS($postid = &#39;5000655082802&#39;)
{
	return Dquery($postid,&#39;ems&#39;);
}



/**
* 顺丰快递
* @param string $postid 快递单号
* @return mixed JSON
*/
function shunfeng($postid = &#39;370270606236&#39;)
{
	return Dquery($postid,&#39;shunfeng&#39;);
}



/**
* 圆通快递
* @param string $postid 快递单号
* @return mixed JSON
*/
function yuantong($postid = &#39;9149223354&#39;)
{
	return Dquery($postid,&#39;yuantong&#39;);
}
/**
* 中通快递
* @param string $postid 快递单号
* @return mixed JSON
*/
function zhongtong($postid = &#39;778179380478&#39;)
{
	return Dquery($postid,&#39;zhongtong&#39;);
}

/**
* 韵达快递
* @param string $postid 快递单号
* @return mixed JSON
*/
function yunda($postid = &#39;1201030121554&#39;)
{
	return Dquery($postid,&#39;yunda&#39;);
}

/**
* 天天快递
* @param string $postid 快递单号
* @return mixed JSON
*/
function tiantian($postid = &#39;580054419316&#39;)
{
	return Dquery($postid,&#39;tiantian&#39;);
}

/**
* 汇通快递
* @param string $postid 快递单号
* @return mixed JSON
*/
function huitongkuaidi($postid=&#39;210322948150&#39;)
{
	return Dquery($postid,&#39;huitongkuaidi&#39;);
}

/**
* 全峰快递
* @param string $postid 快递单号
* @return mixed JSON
*/
function quanfengkuaidi($postid=&#39;340003662547&#39;)
{
	return Dquery($postid,&#39;quanfengkuaidi&#39;);
}

/**
* 德邦物流
* @param string $postid 快递单号
* @return mixed JSON
*/
function debangwuliu($postid=&#39;16312048&#39;)
{
	return Dquery($postid,&#39;debangwuliu&#39;);
}

/**
* 宅急送
* @param string $postid 快递单号
* @return mixed JSON
*/
function chaijisong($postid = &#39;3332776112&#39;)
{
	return Dquery($postid,&#39;zhaijisong&#39;);
}


//Debug 这里是调用时的 debug,最好再加个订单号。
//放回格式都是json喔。。 记得解析
print_r(json_decode(shentong()));
//echo EMS();
//echo shunfeng();
//echo yuantong();
//echo zhongtong();
//echo yunda();
//echo tiantian();
//echo huitongkuaidi();
//echo quanfengkuaidi();
//echo debangwuliu();


?>


 

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/1023581.htmlTechArticlePHP 通过单号查询快递( 申通、EMS、顺丰、圆通、中通、韵达、天天、汇通、全峰、德邦、宅急送) 0,CURLOPT_URL = $url,CURLOPT_FRESH_CONNECT = 1,CURLO...
声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn