聚合数据全国车辆违章数据接口,目前已经支持300个左右的城市违章查询,已连接上万个APP。本文介绍了php车辆违章查询数据示例,有需要的朋友可以来看一下。

方便有车一族随时了解自己是否有过交通违章,避免因遗忘或逾期处理违章罚单而造成的不必要损失。本代码示例是基于聚合数据全国车辆违章查询API的调用,有需要的可以往下看。

使用前你需要:

通过:https://www.juhe.cn/docs/api/id/36申请一个违章查询的appkey

一、引入封装好的请求类class.juhe.wz.php

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

include 'class.juhe.wz.php'; //引入文件

二、配置参数

//接口基本信息配置

$appkey = '**********'; //您申请的违章查询key

$wz = new wz($appkey);

三 、查询违章支持的城市列表由于支持的城市会不定期更新,但不会太频繁,大家可以将这些数据缓存,比如每3小时来更新一次,不用每次都请求接口。

$wzcitys = $wz->getCitys(); //查询所有的支持城市

$wzcitys = $wz->getCitys('GD'); //查询指定省份下的城市

返回的数据格式如下:(很重要,涉及到下一步查询违章所需的一些条件,具体的字段意思可以参考官方的接口文档,其中regist和registno 可以忽略,是旧版本才需要的)

{

"resultcode": "200",

"reason": "成功的返回",

"result": [

{

"province": "北京",

"province_code": "BJ",

"citys": [

{

"city_name": "北京",

"city_code": "BJ",

"abbr": "京",

"engine": "1",

"engineno": "0",

"classa": "0",

"class": "0",

"classno": "0",

"regist": "0",

"registno": "0"

}

]

}

],

"error_code": 0

}

四、查询车辆的违章信息基本上城市只支持小型车查询,所以hpzl可以省去。

//根据需要的查询条件,查询车辆的违章信息

$city = 'GD_DG'; //城市代码,必传

$carno = '粤S*****'; //车牌号,必传

$engineno = '****'; //发动机号,需要的城市必传

$classno = '*****'; //车架号,需要的城市必传

$wzResult = $wz->query($city,$carno,$engineno,$classno);

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

if($wzResult['result']['lists']){

foreach($wzResult['result']['lists'] as $key =>$w){

//以下就是根据实际业务需求修改了

echo $w['area']." ".$w['date']." ".$w['act']." ".$w['fen']." ".$w['money']."
";

}

}else{

echo "该车无违章记录";

}

}else{

//查询不成功

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

}

五、class.juhe.wz.php完整代码

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

//----------------------------------

// 聚合数据全国违章接口调用类

//----------------------------------

class wz{

private $appkey = false; //申请的全国违章查询APPKEY

private $cityUrl = 'http://v.juhe.cn/wz/citys';

private $wzUrl = 'http://v.juhe.cn/wz/query';

public function __construct($appkey){

$this->appkey = $appkey;

}

/**

* 获取违章支持的城市列表

* @return array

*/

public function getCitys($province=false){

$params = 'key='.$this->appkey."&format=2";

$content = $this->juhecurl($this->cityUrl,$params);

return $this->_returnArray($content);

}

/**

* 查询车辆违章

* @param string $city [城市代码]

* @param string $carno [车牌号]

* @param string $engineno [发动机号]

* @param string $classno [车架号]

* @return array 返回违章信息

*/

public function query($city,$carno,$engineno='',$classno=''){

$params = array(

'key' => $this->appkey,

'city' => $city,

'hphm' => $carno,

'engineno'=> $engineno,

'classno' => $classno

);

$content = $this->juhecurl($this->wzUrl,$params,1);

return $this->_returnArray($content);

}

/**

* 将JSON内容转为数据,并返回

* @param string $content [内容]

* @return array

*/

public function _returnArray($content){

return json_decode($content,true);

}

/**

* 请求接口返回内容

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

* @param string $params [请求的参数]

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

* @return string

*/

public 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 );

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,php车辆违章查询数据详解相关推荐

  1. 违章查询源码 php,全国车辆违章查询API接口文档及demo

    简介 聚合数据全国车辆违章数据接口,目前已经支持300个左右的城市违章查询,已连接上万个APP.方便有车一族随时了解自己是否有过交通违章,避免因遗忘或逾期处理违章罚单而造成的不必要损失. 基于PHP的 ...

  2. 违章查询源码 php,全国车辆违章查询数据使用(PHP)

    简介 聚合数据全国车辆违章数据接口,目前已经支持300个左右的城市违章查询,已连接上万个APP.方便有车一族随时了解自己是否有过交通违章,避免因遗忘或逾期处理违章罚单而造成的不必要损失. 基于PHP的 ...

  3. 违章查询源码 php,php车辆违章查询数据示例

    方便有车一族随时了解自己是否有过交通违章,避免因遗忘或逾期处理违章罚单而造成的不必要损失.本代码示例是基于聚合数据全国车辆违章查询API的调用,有需要的可以往下看. 使用前你需要: 通过:https: ...

  4. Nginx源码研究之nginx限流模块详解

    这篇文章主要介绍了Nginx源码研究之nginx限流模块详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考.一起跟随小编过来看看吧 高并发系统有三把利器:缓存.降级和限流: 限流的目的是通过对并 ...

  5. java源码系列:HashMap底层存储原理详解——4、技术本质-原理过程-算法-取模具体解决什么问题

    目录 简介 取模具体解决什么问题? 通过数组特性,推导ascii码计算出来的下标值,创建数组非常占用空间 取模,可保证下标,在HashMap默认创建下标之内 简介 上一篇文章,我们讲到 哈希算法.哈希 ...

  6. [附源码]java毕业设计车辆违章信息管理系统

    项目运行 环境配置: Jdk1.8 + Tomcat7.0 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...

  7. Spring源码分析之Bean的创建过程详解

    前文传送门: Spring源码分析之预启动流程 Spring源码分析之BeanFactory体系结构 Spring源码分析之BeanFactoryPostProcessor调用过程详解 本文内容: 在 ...

  8. 从源码分析RocketMQ系列-RocketMQ消息设计详解

    1 消息存储   消息存储是RocketMQ中最为复杂和最为重要的一部分,本节将分别从RocketMQ的消息存储整体架构.PageCache与Mmap内存映射以及RocketMQ中两种不同的刷盘方式三 ...

  9. Spring源码(八):Spring事务详解

    Spring事务详解 一.事务执行流程 二.Spring事务切面 三.事务切面的Pointcut和Advice 四.注解事务的源码分析 五.Sping事务的传播属性 六.Sping事务的异常校验 七. ...

最新文章

  1. 【杂谈】裸辞一年后,分享一下我的心态
  2. 003 Rabbitmq中交换机的类型
  3. Oracle之垂直水平分库分表(一)
  4. webpack --- 发布环境的配置 代码压缩 代码分类
  5. python怎么开发软件_怎么使用python进行软件开发
  6. linux 串口信息记到日志,[linux学习笔记]之一:ubuntu ch340调试备忘
  7. php7与apache整合,apache集成php7.3.5的详细步骤
  8. oracle+solaris+密码,Oracle Solaris 10回滚补丁文件密码哈希泄露漏洞
  9. [转载]:C#两种不同的存储过程调用方法
  10. appium屏蔽软键盘
  11. 单片机实验中用到的元器件(Multisim14)
  12. 计算机话筒技术指标,麦克风
  13. ardupilot 关于设备车Rover的学习《1》------如何编译下载
  14. 如何使用命令行从图像中提取文本
  15. CentOS Mac 安装zsh,使用oh-my-zsh
  16. 转帖(http://hi.baidu.com/johnehuang/blog/item/e1e96782a4b04e97f703a6dc.html)
  17. Android 10 解决无法通过adb install 安装persistent app
  18. 用php计算自由落体,JavaScript模拟自由落体
  19. 在word文档中如何插入Mathtype公式
  20. myaql数据库如何建表

热门文章

  1. 电脑下面的任务栏怎么显示打开的程序
  2. 迪赛智慧数——其他图表(正交树图):西游记团队角色分析
  3. 黑盒测试技术(边界值分析法)——软件质量保证与测试
  4. ggplot2-局部整体型图表
  5. jQuery05 自定义插件第三方插件
  6. 杜绝迅雷上传数据的方法
  7. 个人所得税及酬金计算公式
  8. TreeMap类型通过实体类添加数据并排序
  9. Python爬取图片2——爬取多个网页图片
  10. 论文撰写的学习(一):标题的撰写