首頁 php教程 php手册 PHP火车余票查询的API,12306官方的API

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

Jun 21, 2016 am 08:49 AM
quot replace str time

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

 

<?php /**
 *火车票查询方法 简单尝试
 *
 * @copyright			widuu
 * @license			http://www.widuu.com
 * @lastmodify			2013-6-20
 */

function json_array($json){
		if($json){
			foreach ((array)$json as $k=>$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="余票:<br>商务座:".$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]},<br>{$str}<br>";
	}



http://www.widuu.com/archives/06/682.html
登入後複製



本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
4 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

time包的單調時鐘處理 time包的單調時鐘處理 Aug 04, 2023 pm 05:45 PM

我們今天主要是來看看golang time 套件的時間應用方式。兩者的一般規則是“wall time”用於告知時間,而“monotonic clock”用於測量時間;除外還有其他的時鐘處理方式。

MySQL中如何使用REPLACE函數取代字串中的指定部分 MySQL中如何使用REPLACE函數取代字串中的指定部分 Jul 25, 2023 pm 01:18 PM

MySQL是一種常用的關聯式資料庫管理系統,它提供了多種函數來處理和操作資料。其中,REPLACE函數是用來替換字串中的指定部分內容的。在本文中,將介紹如何在MySQL中使用REPLACE函數進行字串替換,並透過程式碼範例來示範其用法。首先,我們來了解REPLACE函數的語法:REPLACE(str,search_str,replace_str)其

Python中的字串尋找和替換技巧有哪些? Python中的字串尋找和替換技巧有哪些? Oct 20, 2023 am 11:42 AM

Python中的字串尋找和替換技巧有哪些? (具體程式碼範例)在Python中,字串是一種常見的資料類型,我們在日常程式設計中經常會遇到字串的尋找和替換操作。本文將介紹一些常用的字串查找和替換技巧,並配以具體的程式碼範例。尋找子字串在字串中尋找特定的子字串可以使用字串的find()方法或index()方法。 find()方法傳回子字串在字串中第一次出現的位置索

php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 php提交表单通过后,弹出的对话框怎样在当前页弹出,该如何解决 Jun 13, 2016 am 10:23 AM

php提交表单通过后,弹出的对话框怎样在当前页弹出php提交表单通过后,弹出的对话框怎样在当前页弹出而不是在空白页弹出?想实现这样的效果:而不是空白页弹出:------解决方案--------------------如果你的验证用PHP在后端,那么就用Ajax;仅供参考:HTML code

Java8 Time Api如何使用 Java8 Time Api如何使用 Apr 28, 2023 pm 12:25 PM

1.概述作為本文的一部分,讓我們從現有Date和CalendarAPI存在的一些問題入手,來探討新的Java8Date和TimeAPI如何解決這些問題。我們也將搞一搞Java8時間類別庫中的核心類,例如LocalDate,LocalTime,LocalDateTime,ZonedDateTime,Period,Duration以及它們的api。 2.舊的時間API(java8之前)的問題線程安全-Date和Calendar類別不是線程安全的,使開發者難以調試這些api的並發問題,需要編寫額外的程式碼來處

python中time和datetime的差別及用法是什麼 python中time和datetime的差別及用法是什麼 May 02, 2023 am 11:01 AM

一.Python中表示時間的兩種方式:時間戳:相對於1970.1.100:00:00以秒計算的偏移量,唯一的時間元組struct_time:共有9個元素>tm_year:年1-12> tm_mon:月1-12>tm_mday:日1-31>tm_hour:時0-23>tm_min:分0-59>tm_sec:秒0-59>tm_wday:星期0-6(0表示週日)>tm_day:一年中的第幾天1-366>tm_isdst:是否為夏令,預設為-1二.ti

Python內建類型str原始碼分析 Python內建類型str原始碼分析 May 09, 2023 pm 02:16 PM

1Unicode電腦儲存的基本單位是位元組,由8個位元組組成。由於英文只由26個字母加若干符號組成,因此英文字元可以直接用位元組來保存。但是其他語言(例如中日韓等),由於字元眾多,不得不使用多個位元組來進行編碼。隨著電腦科技的傳播,非拉丁文字元編碼技術不斷發展,但是仍有兩個比較大的限制:不支援多語言:一種語言的編碼方案不能用於另一種語言沒有統一標準:例如中文就有GBK、GB2312、GB18030等多種編碼標準由於編碼方式不統一,開發人員就需要在不同編碼之間來回轉換,不可避免地會出現很多錯

Python time模組時間怎麼取得與轉換 Python time模組時間怎麼取得與轉換 May 13, 2023 pm 12:19 PM

Pythontime模組時間取得和轉換Python的Time庫可以進行時間相關的處理,例如存取當前日期和時間,輸出不同格式的時間以及等待指定的時間等。 1.取得時間1.1.時間戳importtimetimestamp=time.time()#1682737552.5009851格林威治時間(GMT)1970年01月01日00時00分00秒起至現在的總秒數1.2.結構化時間01日00時00分00秒起至現在的總秒數1.2.結構化時間importstructtime_time= time.localtime()#time.struct_time(tm_year=2

See all articles