php怎麼識別火車票

2022-10-25 18:00:43

php識別火車票的方法:1、開通火車票識別API介面;2、建立一個PHP範例檔案;3、設定「header('Content-type:text/html;charset=utf-8');」;4、設定申請的appkey;5、應用appkey;6、請求URL;7、獲取介面資料並分析處理即可。

php入門到就業線上直播課:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API偵錯工具:

本教學操作環境:windows7系統、PHP8.1版、Dell G3電腦。

php怎麼識別火車票?

1、開通火車票識別API介面:

通過https://www.juhe.cn/docs/api/id/522?s=cpphpcn註冊及開通

介面說明:

  • 該介面支援火車票全欄位的識別,包括編號、票價、姓名、座位號、出發時間、出發站、到達站、車次、席別等。

  • 返回格式:json

  • 請求方式:post

  • 請求範例:http://v.juhe.cn/trainTicketOcr/index.php

2、基於php的12306火車票查詢介面呼叫程式碼範例

php程式碼範例如下:

1.[程式碼][PHP]程式碼

// +-------------------

header('Content-type:text/html;charset=utf-8');

//設定您申請的appkey

$appkey = "*********************";

//************1.站到站查詢(含票價)************

$url = "http://apis.juhe.cn/train/s2swithprice";

$params = array(

"start" => "",//出發站

"end" => "",//終點站

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

"dtype" => "",//返回資料的格式,xml或json,預設json

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

//************2.12306訂票②:車次票價查詢************

$url = "http://apis.juhe.cn/train/ticket.price.php";

$params = array(

"train_no" => "",//列次編號,對應12306訂票①:查詢車次中返回的train_no

"from_station_no" => "",//出發站序號,對應12306訂票①:查詢車次中返回的from_station_no

"to_station_no" => "",//出發站序號,對應12306訂票①:查詢車次中返回的to_station_no

"date" => "",//預設當天,格式:2014-12-25

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

//************3.車次查詢************

$url = "http://apis.juhe.cn/train/s";

$params = array(

"name" => "",//車次名稱,如:G4

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

"dtype" => "",//返回資料的格式,xml或json,預設json

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

//************4.站到站查詢************

$url = "http://apis.juhe.cn/train/s2s";

$params = array(

"start" => "",//出發站

"end" => "",//終點站

"traintype" => "",//列車型別,G-高速動車 K-快速 T-空調特快 D-動車組 Z-直達特快 Q-其他

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

"dtype" => "",//返回資料的格式,xml或json,預設json

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

//************5.12306實時餘票查詢************

$url = "http://apis.juhe.cn/train/yp";

$params = array(

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

"dtype" => "",//返回資料的格式,xml或json,預設json

"from" => "",//出發站,如:上海虹橋

"to" => "",// 到達站,如:溫州南

"date" => "",//出發日期,預設今日

"tt" => "",//車次型別,預設全部,如:G(高鐵)、D(動車)、T(特快)、Z(直達)、K(快速)、Q(其他)

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

//************6.12306訂票①:查詢車次************

$url = "http://apis.juhe.cn/train/ticket.cc.php";

$params = array(

"from" => "",//出發站名稱:如上海虹橋

"to" => "",//到達站名稱:如溫州南

"date" => "",//預設當天,格式:2014-07-11

"tt" => "",//車次型別,預設全部,如:G(高鐵)、D(動車)、T(特快)、Z(直達)、K(快速)、Q(其他)

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

//************7.火車票代售點查詢************

$url = "http://apis.juhe.cn/train/dsd";

$params = array(

"province" => "",//省份,如:浙江

"city" => "",//城市,如:溫州

"county" => "",//區/縣,如:鹿城區

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

"dtype" => "",//返回資料的格式,xml或json,預設json

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

//************8.列車站點列表************

$url = "http://apis.juhe.cn/train/station.list.php";

$params = array(

"key" => $appkey,//應用APPKEY(應用詳細頁查詢)

"dtype" => "",//返回資料的格式,xml或json,預設json

);

$paramstring = http_build_query($params);

$content = juhecurl($url,$paramstring);

$result = json_decode($content,true);

if($result){

if($result['error_code']=='0'){

print_r($result);

}else{

echo $result['error_code'].":".$result['reason'];

}

}else{

echo "請求失敗";

}

//**************************************************

/**

* 請求介面返回內容

* @param string $url [請求的URL地址]

* @param string $params [請求的引數]

* @param int $ipost [是否採用POST形式]

* @return string

*/

function juhecurl($url,$params=false,$ispost=0){

$httpInfo = array();

$ch = curl_init();

curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );

curl_setopt( $ch, CURLOPT_USERAGENT , 'JuheData' );

curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );

curl_setopt( $ch, CURLOPT_TIMEOUT , 60);

curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );

curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

if( $ispost )

{

curl_setopt( $ch , CURLOPT_POST , true );

curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );

curl_setopt( $ch , CURLOPT_URL , $url );

}

else

{

if($params){

curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );

}else{

curl_setopt( $ch , CURLOPT_URL , $url);

}

}

$response = curl_exec( $ch );

if ($response === FALSE) {

//echo "cURL Error: " . curl_error($ch);

return false;

}

$httpCode = curl_getinfo( $ch , CURLINFO_HTTP_CODE );

$httpInfo = array_merge( $httpInfo , curl_getinfo( $ch ) );

curl_close( $ch );

return $response;

}
登入後複製

推薦學習:《》

以上就是php怎麼識別火車票的詳細內容,更多請關注TW511.COM其它相關文章!