webapi php,webapi.php

// 附:查询接口(返回json)WEB.PHP环境使用不是宝塔面板

// 供大家用于各地机房都放一个接口,然后可得各地解析结果

$temes = strtotime(date('Y-m-d H:i:s'));

//返回普通消息模板

function tishi($codes, $temes, $descs){

$toshi["status"] = $codes;

$toshi["msg"] = $descs;

$toshi["times"] = $temes;

return json_encode($toshi);

}

//适合二级json

function lijson($arr){

$ii = 0;

$ss = 0;

foreach($arr as $k=>$v) {

if(!is_array($v)) {

$ii++;

$jsjs[$ii]["name"] = $k;

$jsjs[$ii]["value"] = $v;

}else{

$ss++;

$jsjs["name"] = $k;

if(is_array($v)) {

$jsjs["list"][$ss] = lijson($v);

}

}

}

return $jsjs;

}

$t=isset($_GET['t'])?$_GET['t']:"er";

$t = strtolower(trim($t));

//$tips = tishi("10001", $temes, "参数t缺失(类型)");

//if($t=="er" || $t=="") exit($tips);

$query=isset($_GET['d'])?$_GET['d']:"er";

$query=strtolower(trim($query));

if($t=="er" && $t==""){

$tips = tishi("10002", $temes, "参数d缺失(域名)");

if($query=="er" || $query=="") exit($tips);

}

/*

A记录:将域名指向一个IPv4地址(例如:10.10.10.10),需要增加A记录

CNAME记录:如果将域名指向一个域名,实现与被指向域名相同的访问效果,需要增加CNAME记录

MX记录:建立电子邮箱服务,将指向邮件服务器地址,需要设置MX记录

NS记录:域名解析服务器记录,如果要将子域名指定某个域名服务器来解析,需要设置NS记录

TXT记录:可任意填写(可为空),通常用做SPF记录(反垃圾邮件)使用

AAAA记录:将主机名(或域名)指向一个IPv6地址(例如:ff03:0:0:0:0:0:0:c1),需要添加AAAA记录

SRV记录:记录了哪台计算机提供了哪个服务。格式为:服务的名字.协议的类型(例如:_example-server._tcp)

*/

switch($t){

case 'ns': //=== NS记录 ===//

/*

$CACHE["status"] = "10000";

$CACHE["msg"] = "ok";

$CACHE["times"] = $temes;

$CACHE["types"] = "NS记录:域名解析服务器记录";

*/

$CACHE = dns_get_record($query, DNS_NS);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

case 'a': //=== A记录 ===//

$CACHE = dns_get_record($query, DNS_A);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

case 'aaaa'://=== AAAA记录 ===//

$CACHE = dns_get_record($query, DNS_AAAA);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

case 'mx'://=== MX记录 ===//

$CACHE = dns_get_record($query, DNS_MX);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

case 'cname'://=== CNAME记录 ===//

$CACHE = dns_get_record($query, DNS_CNAME);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

case 'txt'://=== TXT记录 ===//

$CACHE = dns_get_record($query, DNS_TXT);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

case 'ip'://=== TXT记录 ===//

$CACHE = array();

$CACHE['name'] = "0";

$CACHA = array();

$CACHA['ip'] = gethostbyname($query);

array_push($CACHE, $CACHA);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

case 'srv'://=== SRV记录 ===//

$CACHE = dns_get_record($query, DNS_SRV);

if($CACHE){

echo json_encode(lijson($CACHE));

}else{

$tips = tishi("10002", $temes, "未查询到结果");

exit($tips);

}

break;

/*更多查询请自行添加*/

default:

$CACHE["status"] = "10000";

$CACHE["msg"] = "ok";

$CACHE["times"] = $temes;

$CACHE["types"] = "列出查询";

$CACHE["item"]["0"]["types"] = "IP";

$CACHE["item"]["0"]["nrong"] = "解析IP";

$CACHE["item"]["1"]["types"] = "a";

$CACHE["item"]["1"]["nrong"] = "A记录";

$CACHE["item"]["2"]["types"] = "aaaa";

$CACHE["item"]["2"]["nrong"] = "AAAA记录";

$CACHE["item"]["3"]["types"] = "cname";

$CACHE["item"]["3"]["nrong"] = "CNAME记录";

$CACHE["item"]["4"]["types"] = "mx";

$CACHE["item"]["4"]["nrong"] = "MX记录";

$CACHE["item"]["5"]["types"] = "txt";

$CACHE["item"]["5"]["nrong"] = "TXT记录";

$CACHE["item"]["6"]["types"] = "ns";

$CACHE["item"]["6"]["nrong"] = "NS记录";

$CACHE["item"]["7"]["types"] = "srv";

$CACHE["item"]["7"]["nrong"] = "SRV记录";

$tips = json_encode($CACHE);

exit($tips);

break;

}

?>

一键复制

编辑

Web IDE

原始数据

按行查看

历史

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值