深圳通余额查询的API,可以通过深圳通号码查询到余额及卡有效期等信息。 用到Domxpath和Curl两方面的知识。 源码已托管到github,另外要加载个类:myclass 项目地址:https://github.com/skiy/dev 演示:http://api.oupag.com/dev/api/shenzhentong.php?cardn
深圳通余额查询的API,可以通过深圳通号码查询到余额及卡有效期等信息。
用到Domxpath和Curl两方面的知识。
源码已托管到github,另外要加载个类:myclass
项目地址:https://github.com/skiy/dev
演示:http://api.oupag.com/dev/api/shenzhentong.php?cardno=293005762
update 2014.10.20 22:53
原来可以直接用GET方式,不需要用curl的POST方式来处理,这样响应快些~
PHP
<?php /** * shenzhentong.php * 深圳通的API * @autuor: Skiychan * @contact: developer@zzzzy.com & QQ:1005043848 * @website: www.zzzzy.com & http://weibo.com/ckiy * @date: 2014-10-19 * @readme https://github.com/skiy/dev/blob/master/docs/shenzhentong.md */ /** 链接:http://query.shenzhentong.com:8080/sztnet/qrycard.jsp 接口信息 URL:http://query.shenzhentong.com:8080/sztnet/qryCard.do http://query.shenzhentong.com:8080/sztnet/qryCard.do?cardno=328375558 POST方法:cardno:328375558 ### 返回字段 json格式 返回值字段 | 字段类型 | 字段说明 ----|------|---- card_number | int | 卡号 card_balance | string | 卡内余额 balance_time | string | 余额截止时间 card_validity | string | 卡有效期 current_time | string | 查询时间 */ require_once "../libs/myclass.php"; date_default_timezone_set("Asia/Shanghai"); $cardno = isset($_GET["cardno"]) ? $_GET["cardno"] : 0; $post_cardno = "cardno={$cardno}"; $data = new Myclass(); //curl 的POST方式 //$page = $data->curls("http://query.shenzhentong.com:8080/sztnet/qryCard.do", false, $post_cardno); //直接GET方式 $page = $data->curls("http://query.shenzhentong.com:8080/sztnet/qryCard.do?cardno={$cardno}"); $page = $data->pageToDom($page, "GBK"); $tr = $page->query("//table[@class='tableact']/tr/td"); function getTextContent($m_query, $m_id) { $myTXT = str_replace(":", "", $m_query->item($m_id)->textContent); return $myTXT; } //截止时间内余额 preg_match("/截止到([^\)]*)/", getTextContent($tr, 2), $expires); $results = array( "card_number" => (int) getTextContent($tr, 1), "card_balance" => getTextContent($tr, 3), "balance_time" => $expires[1], "card_validity" => getTextContent($tr, 5), "current_time" => date("Y-m-d H:i:s", time())); echo json_encode($results); ?>
<?php /** * myclass.php * dev的基础类库 * Autuor: Skiychan * Contact: developer@zzzzy.com & QQ:1005043848 * Website: www.zzzzy.com & http://weibo.com/ckiy * Date: 2014-10-19 */ class Myclass { /* curl配置: 取网页源码、模拟登陆、POST提交 * @param $url: 如果非数组,则为http;如是数组,则为https * @param $header: 头文件 * @param $post: post方式提交 array 或 abc=1&bcd=2 形式 * @param $cookies: 0默认无cookie,1为设置,2为获取 */ public function curls($urls, $header = FALSE, $post = FALSE, $cookies = 0) { $url = is_array($urls) ? $urls['0'] : $urls; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //带header方式提交 if($header != FALSE){ curl_setopt($ch, CURLOPT_HTTPHEADER, $header); } //post提交方式 if($post != FALSE){ curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); } //cookies if($cookies == 1){ curl_setopt($ch, CURLOPT_COOKIEJAR, "cookiefile"); }else if($cookies == 2){ curl_setopt($ch, CURLOPT_COOKIEFILE, "cookiefile"); } //https if(is_array($urls)){ curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); } $data = curl_exec($ch); curl_close($ch); return $data; } /* 将网页转换成XML,再转换成DOM * @param $data 非数组=>源码,数组 array($url, 1)1为file_get_contents,2为curl */ public function pageToDom($data, $encoded = "utf-8"){ if (is_array($data)) { if ($data[1] == 1) { $datas = @file_get_contents($data[0]); } if ($data[1] == 2) { $datas = @$this->curls($data[0]); } } else { $datas = $data; } if (empty($datas)){ return false; } $meta = '<meta http-equiv="Content-Type" content="text/html; charset='.$encoded.'"/>'; $datas = $meta.$datas; $xmldoc = new DOMDocument(); @$xmldoc->loadHTML($datas); $xmldoc->normalizeDocument(); $domresult = new Domxpath($xmldoc); return $domresult; } }
성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사
R.E.P.O. 에너지 결정과 그들이하는 일 (노란색 크리스탈)
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. 최고의 그래픽 설정
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
어 ass 신 크리드 그림자 : 조개 수수께끼 솔루션
2 몇 주 전ByDDD
R.E.P.O. 아무도들을 수없는 경우 오디오를 수정하는 방법
4 몇 주 전By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25 : Myrise에서 모든 것을 잠금 해제하는 방법
1 몇 달 전By尊渡假赌尊渡假赌尊渡假赌

뜨거운 도구

VSCode Windows 64비트 다운로드
Microsoft에서 출시한 강력한 무료 IDE 편집기

에디트플러스 중국어 크랙 버전
작은 크기, 구문 강조, 코드 프롬프트 기능을 지원하지 않음

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전

드림위버 CS6
시각적 웹 개발 도구

DVWA
DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는
