这篇文章主要介绍“PHP如何识别火车票”,在日常操作中,相信很多人在PHP如何识别火车票问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”PHP如何识别火车票”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
PHP识别火车票的方法:1、开通火车票识别API接口;2、创建一个PHP示例文件;3、设置“header('Content-type:text/html;charset=utf-8');”;4、配置申请的appkey;5、应用appkey;6、请求URL;7、获取接口数据并分析处理即可。
PHP怎么识别火车票?
1、开通火车票识别API接口:
通过https://www.juhe.cn/docs/api/id/522?s=cpPHPcn
注册及开通
接口说明:
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如何识别火车票”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程之家网站,小编会继续努力为大家带来更多实用的文章!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。