php 12306余票查询,PHP火车余票查询的API,12306官方的API

我在做自己微信的时候需要的火车票查询的东西,注册的东西等等太多了,今天就简单的做了下测试看能获取到不,数据怎么样处理速度怎么样,因为是个人做所以就没有去其他网站上找接口,就自己做了下!下边把方法放出来!

$v){

$data[$k] = !is_string($v)? json_array($v):$v;

}

return $data;

}

}

function doget ($start,$end,$time) // get获取数据使用

{

if(empty($time)){

$time = date('Y-m-d',time());

}else{

if(substr($time,0,1)!=0){

$time = date('Y-0',time()).$time;

echo substr($time,0,1);

}else{

$time = date('Y-',time()).$time;

}

}

$name = include ("../name.php");

$star = $name[$start];

$end = $name[$end];

$url = "http://dynamic.12306.cn/otsquery/query/queryRemanentTicketAction.do?method=queryLeftTicket&orderRequest.train_date={$time}&orderRequest.from_station_telecode={$star}&orderRequest.to_station_telecode={$end}&orderRequest.train_no=&trainPassType=QB&trainClass=QB%23D%23Z%23T%23K%23QT%23&includeStudent=00&seatTypeAndNum=&orderRequest.start_time_str=00%3A00--24%3A00";

$optionget = array('http' => array('method' => "GET", 'header' => "User-Agent:Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0; .NET CLR 3.5.21022; .NET CLR 3.0.04506; CIBA)\r\nAccept:*/*\r\nReferer:http://dynamic.12306.cn/otsquery/query/queryRemanentTicketAction.do?method=init"));

$file = file_get_contents($url, false , stream_context_create($optionget));

return json_array(json_decode($file));

}

$result = doget("北京","廊坊","6-23");

$result = strip_tags($result['datas']);

$return_str = str_replace(" ","",$result);

$return_str = str_replace("\\n","",$return_str);

$a = explode(",",$return_str);

$name =array();

$c = array_chunk($a,16);

array_pop($c);

foreach($c as $k =>$v){

$str="余票:

商务座:".$v[5].",特等座:".$v[6].",一等座:".$v[7].",二等座:".$v[8].",高级软卧:".$v[9].",软卧:".$v[10].",硬卧:".$v[11].",软座:".$v[12].",硬座:".$v[13].",无座:".$v[14].",其他:".$v[15];

$str = preg_replace("/,硬座\:--,/","",$str);

$str = preg_replace("/商务座\:--,/","",$str);

$str = preg_replace("/,特等座\:--,/","",$str);

$str = preg_replace("/,一等座\:--,/","",$str);

$str = preg_replace("/,二等座\:--,/","",$str);

$str = preg_replace("/,高级软卧\:--,/","",$str);

$str = preg_replace("/,软卧\:--,/","",$str);

$str = preg_replace("/,硬卧\:--,/","",$str);

$str = preg_replace("/,软座\:--,/","",$str);

$str = preg_replace("/,硬座\:--,/","",$str);

$str = preg_replace("/,其他\:--/","",$str);

echo "车次:{$v[1]},发站:{$v[2]},到站:{$v[3]},历时:{$v[4]},

{$str}

";

}

http://www.widuu.com/archives/06/682.html

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值