PHP+json开发API接口实例

首先要将接口实例分为服务端客户端

简单粗暴,直接上代码!代码以一个简单的限制域名访问为例.

服务端(下面代码复制到api.php):

// 定义接口返回值

$now_url="localhost";

$success = '';

$output = array();

$url = @$_GET['url'] ? $_GET['url'] : '';//根据需要自行设置

$con = mysql_connect("localhost","数据库用户名","数据库密码");

if (!$con)

  {

  die('Could not connect: ' . mysql_error());

  }

mysql_select_db("连接的数据库名", $con);

//SQL语句可忽略,按自己需求随意发挥,开心就好

$sql="SELECT url1,url2 FROM [表名] where [字段1]=1 and [字段2]='$url' or url2='$url'";

$result = mysql_query($sql);

 if(!$result)  

    {  

        die("Valid result!");  

    }

while($row = mysql_fetch_array($result,MYSQL_ASSOC))

  {

  if (!empty($row)) {

  $success = '1';

  }

  else{

  $success='0';

  }

  // 返回json数据,或者字符串,数字。

    $json = array('success' =>$success);

    echo json_encode($json);

  //echo "

";

  //var_dump($row);  

  //mysql_free_result($rs);

  }

mysql_close($con);

?>

客户端:

在需要调用接口的地方加上以下代码

$now_url=$_SERVER['HTTP_HOST'];

    $requesturl="http://www.xxx.com/api.php?url=".urlencode($now_url);

    //curl方式获取json数组

    $curl = curl_init(); //初始化

    curl_setopt($curl, CURLOPT_URL, $requesturl);//设置抓取的url

    curl_setopt($curl, CURLOPT_HEADER, 0);//设置头文件的信息作为数据流输出

    curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);//设置获取的信息以文件流的形式返回,而不是直接输出。

    $data = curl_exec($curl);//执行命令

    curl_close($curl);//关闭URL请求

    //显示获得的数据

    //print_r($data);

    $obj=json_decode($data);

    echo $result=$obj->success;

    if ($result!=1) {

    {exit('对不起域名受限');}

    }
原文地址:http://www.vnote.net/index.php?m=home&c=article&a=index&id=545


回复列表



回复操作

正在加载验证码......

请先拖动验证码到相应位置

发布时间:2016-11-18 14:21:55

修改时间:2016-11-18 14:30:18

查看次数:593

评论次数:2