后台生成JSON数据处理函数response.php
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
<?php class Response{ /** * @param $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * return string * 按json方式输出通信数据 */ public static function json($code,$message='',$data=array()){ if(!is_numeric($code)){ return ''; } $result = array( 'code'=>$code, 'message'=>$message, 'data'=>$data ); echo json_encode($result,320);//不对中文/编码 exit; } } ?> |
前台调用test.php
我这里是查询后台数据库的简单例子,有两个参数
一个是key
一个是page
做了一个简单的分页查询。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
<?php require_once('./response.php'); require_once('./db_config.php'); $keyword= $_GET["key"]; $page= $_GET["page"]; $n=($page-1)*10; $link = mysql_connect($mysql_server_name, $mysql_username, $mysql_password) or die("网站爆了,休息一下吧!") ;//连接数据库 mysql_query("set names 'utf8'"); //数据库输出编码 应该与你的数据库编码保持一致建议用UTF-8 国际标准编码. mysql_select_db('verystream'); //打开数据库 $sql = "select * from data where concat(fanhao,title,time) like '%$keyword%' order by time desc limit $n,10"; $result=mysql_query($sql); if(mysql_num_rows($result)<1) { Response::json(400,"No Data Found",""); exit(); } $i=0; while($row = mysql_fetch_array($result)) { $datas[$i]['fanhao']=$row['fanhao']; $datas[$i]['title']=$row['title']; $datas[$i]['time']=$row['time']; $datas[$i]['link']=$row['link']; $datas[$i]['img']=$row['img']; $i++; } Response::json(200,"success",$datas);//生成JSON数据 ?> |
测试地址:
http://api.luluit.top/verystream_api.php?key=2019&page=1
注意文件编码需为UTF-8而不是UTF-8 bom,不然PHP解析JSON时会提示语法错误。相关链接:https://www.cnblogs.com/jackylee92/p/5948294.html
近期评论