>php教程 >php手册 >기차표 예약 인터페이스로 기차표 예약 프로세스가 완료됩니다.

기차표 예약 인터페이스로 기차표 예약 프로세스가 완료됩니다.

WBOY
WBOY원래의
2016-10-18 08:41:411560검색

이 튜토리얼은 집계된 데이터-열차 티켓 예약 인터페이스의 사용 프로세스를 보여주는 데 사용됩니다.
1. PHP 환경을 구성하세요. PHP 버전은 5.5 이상인 것이 좋습니다
2. 데이터 분리 - 기차표 예매 인터페이스 애플리케이션 키: https://www.juhe.cn/docs/api/id/173
3. 다음 코드는 과정을 이해하기 위한 것입니다. 직접 복사하거나 프로덕션 환경에서 사용하지 마세요. '신청한 키', <br> 'url' => 배열( <br> 'cityCode' => 'http://op.juhe.cn/trainTickets/cityCode', <br> 'ticketsAvailable' => 'http://op.juhe.cn/trainTickets/ticketsAvailable', <br> '제출' => 'http://op.juhe.cn/trainTickets/submit', <br> 'orderStatus' => 'http://op.juhe.cn/trainTickets/orderStatus', <br> '지불' => 'http://op.juhe.cn/trainTickets/pay', <br> ), <br> ); <br> #1. 사이트 단축번호를 확인하세요 <br> echo '여행계획: 2015년 7월 1일, 쑤저우를 출발해 칭다오를 목적지로 <br> [객체 객체]'; echo '소주역과 칭다오역의 단축번호를 먼저 검색하세요 <br> '; //소주역 단축번호 조회 <br> $suzhouCodeResponse = post($config['url']['cityCode'], 'key='.$config['key'].'&stationName=쑤저우') <br> $suzhouCodeArray = json_decode($suzhouCodeResponse, true) <br> $suzhouCode = $suzhouCodeArray['결과']['코드'] <br> echo '쑤저우 역의 단축 코드는 '.$suzhouCode'입니다. <br> '; // 칭다오역 단축번호 조회 <br> $qingdaoCodeResponse = post($config['url']['cityCode'], 'key='.$config['key'].'&stationName=칭다오') <br> $qingdaoCodeArray = json_decode($suzhouCodeResponse, true) <br> $qingdaoCode = $qingdaoCodeArray['결과']['코드'] <br> echo '칭다오 역의 단축 코드는 '.$qingdaoCode'입니다. <br> [객체 객체]'; #2. 남은 투표수 확인 <br> echo '그럼 남은 티켓 정보를 조회해 보세요 <br> '; $ticketsAvailableResponse = post($config['url']['ticketsAvailable'], <br> '&key='.$config['키'] <br> '&train_date=2015-07-01'. //날짜 형식에 주의하세요 <br> '&from_station=SZH'. //이전 단계에서 찾은 쑤저우 역의 단축 코드는 SZH <br> '&to_station=QDK' //이전 단계에서 찾은 칭다오 역의 단축 코드는 QDK <br> ); <br> $ticketsAvailableArray = json_decode($ticketsAvailableResponse, true) <br> echo '남은 티켓 정보 조회: <br> '; print_r($ticketsAvailableArray['result']['list']) <br> 에코' <br> [객체 객체]'; #3. 주문 제출 <br> echo '주문 제출 <br> '; echo '남은 티켓 정보를 토대로 G226 열차가 더 적합한 것으로 나타났습니다 <br> '; echo 'G226 열차의 남은 티켓 세부정보를 확인하세요. 일부 필드에 주의가 필요합니다. <br> '; echo 'start_station_name: 출발역, 상하이 훙차오 <br> '; echo 'from_station_name: 우리가 출발하려는 역은 Suzhou North입니다. Suzhou가 아닙니다. <br> '; echo 'from_station_code: OHH, 이는 쑤저우 역이 아닌 쑤저우 북역의 단축 코드이며, 주문 제출 시 전달되는 매개변수이기도 하다는 점 참고해주세요 <br> '; $passengersArray = 배열(<br> 배열(<br> 'passengerid' => '1123', //승객의 일련번호. 승객이 여러 명인 경우 각 승객의 승객 번호는 고유해야 합니다. <br> 'passengersename' => 'Zhang San', //실명으로 바꿔주세요 <br> 'piaotype' => '1', //공식 홈페이지 문서에서 piaotype과 piaotypename의 대응관계를 잘 확인하시고, 착오가 없는지 확인해주세요<br>'piaotypename' => '성인티켓', <br> 'Passporttypeseid' => '1', //공식 홈페이지 문서에서passporttypeseid와passporttypeseidname의 대응관계를 잘 확인하시고, 착오가 없는지 확인해주세요<br> 'passporttypeseidname' => '2세대 신분증', <br> 'passportseno' => '420205199207231234', //실제 주민번호로 바꿔주세요 <br> 'price' => '763.5', //실제 가격을 입력하세요 <br> 'zwcode' => 'M', //선택한 열차에 그런 좌석이 있는지 확인해주세요 <br> 'zwname' => '퍼스트 클래스', <br> ), <br> array( //두 번째 승객, 최대 5명 <br> '승객 ID' => '2123', <br> '승객 이름' => '이思', <br> '피아오타입' => '1', <br> 'piaotypename' => '성인티켓', <br> 'passporttypeseid' => '1', <br> 'passporttypeseidname' => '2세대 신분증', <br> '여권' => '23060519930621234', <br> '가격' => '59.5', <br> 'zwcode' => 'M', <br> 'zwname' => '퍼스트 클래스', <br> ) <br> ); <br> $postArray = 배열(<br> '키' => $config['키'], <br> 'checi' => 'G226', //이전 쿼리에서는 G226이 더 많은 표를 얻은 것으로 나타났습니다 <br> 'from_station_code' => 'OHH', //출발역의 단축번호입니다. SZH(쑤저우)가 아니니 주의하세요 <br> 'from_station_name' => 'Suzhou North', //출발역 이름은 출발역 단축코드와 일치해야 합니다 <br> 'to_station_code' => 'QDK', //역 도착 단축번호 <br> 'to_station_name' => '칭다오', //도착역 이름은 도착역 단축코드와 일치해야 합니다 <br> 'train_date' => '2015-07-01', //기차 날짜, 시간 형식에 주의하세요 <br> '승객' => json_encode($passengersArray, JSON_UNESCAPED_UNICODE), <br> ); <br> $postStr = '' <br> foreach($postArray as $key => $value) { <br> $postStr .= '&'.$key.'='.$value <br> } <br> //에코 $postStr;exit; $submit = post($config['url']['submit'], $postStr) <br> //에코 $submit;exit; echo '[객체 객체]' <br> /* 일반 출력 예시 <br> { <br> "reason": "성공적인 복귀", <br> "결과": { <br> "orderid": "1433493562439" //나중에 이 주문 번호를 기준으로 처리 상태를 확인할 수 있습니다 <br> }, <br> "오류 코드": 0 <br> } <br> */ <br> #4. 주문상태 확인 <br> echo '주문 상태 확인 <br> '; //주문번호를 본인의 주문번호로 바꿔주세요 <br> $status = post($config['url']['orderStatus'], 'key='.$config['key'].'&orderid=1433493562439') <br> 에코 $상태;#5. 티켓을 요청하세요(총액이 귀하의 계정에서 공제됩니다). 이 인터페이스에서 데이터를 요청하기 전에 주문이 결제되었는지 확인하세요. <br> echo '[객체 객체]티켓 발권 요청 (주문 현황을 확인하고 좌석 점유 성공 여부를 아는 전제) <br> '; $pay = post($config['url']['pay'], 'key='.$config['key'].'&orderid=1433493562439') <br> 에코 $지불 <br>

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.