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('对不起域名受限');}
}
文章来源:微笔记博客