php寫介面例子返回json和xml資料
阿新 • • 發佈:2019-02-13
<?php // echo md5("news1"); /* 查詢 介面地址:http://apis.juhe.cn/mobile/get 支援格式:json/xml 請求方式:get 請求示例:http://localhost/day9.8/port.php?key=c7d81b6949462e2f1bb5fdf18dd1d006&id=使用者id&dtype=xx 請求引數說明: id int 是 使用者id key string 是 應用APPKEY(應用詳細頁查詢) dtype string 否 返回資料的格式,xml或json,預設json 返回引數說明: error_code int 返回碼 reason string 返回說明 result string 返回結果集 */ // 模擬 // $key=c7d81b6949462e2f1bb5fdf18dd1d006; // $id=1; // 接收使用者資訊 $key=$_GET['key']; $id=$_GET['id']; // 如果使用者寫dtype接收值,沒有預設json $dtype=isset($_GET['dtype'])?$_GET['dtype']:'json'; // 伺服器生成key值和使用者key值對比 $app_key=md5("news$id"); if ($app_key!=$key) { echo "非法請求";die; } // 生成介面 $pdo=new PDO("mysql:host=localhost;dbname=news","root","root"); $pdo->exec("set names utf8"); // 得到資料庫的內容 $sql="select * from hao123"; $data=$pdo->query($sql)->fetchAll(PDO::FETCH_ASSOC); if ($dtype=='xml') { // 生成xml格式資料 header("content-type:text/xml;charset=utf8"); echo "<?xml version='1.0' encoding='utf-8'?>"; echo ""; foreach ($data as $key => $value) { echo ""; echo "{$value['link']}"; echo "{$value['title']}"; echo ""; } echo ""; }else{ // 生成json格式資料 header("content-type:text/html;charset=utf8"); echo json_encode($data,JSON_UNESCAPED_UNICODE); } ?>