2023-06-03 9347

首頁 » 文檔 » 開發(fā)指南

網站數據轉換為JSON格式輸出

在開發(fā)APP、小程序等應用過程中,經常需要以API接口形式請求網站數據,以下為JSON數據輸出的一個開發(fā)示例。

建立api/json/demo.php,代碼如下:

<?php
require '../../common.inc.php';
$lists = array();
$result = $db->query("SELECT itemid,title FROM {$DT_PRE}webpage ORDER BY listorder");
while($r = $db->fetch_array($result)) {
	$lists[] = $r;
}
echo json_encode($lists);
?>

基本流程是先引入系統(tǒng)框架,然后將數據庫里的數據查詢出來,保存到數組,通過json_encode函數將數組轉換為JSON格式數據輸出。

實際開發(fā)過程可以根據實際需要,傳遞不同的參數,改變SQL語句來實現不同數據的輸出。

通過瀏覽器訪問 網站地址/api/json/demo.php 調試無誤之后,在應用中請求此地址即可獲取相應的數據。

自V8.0版本,api/json/demo.php已經默認創(chuàng)建,可以參考此文件創(chuàng)建更多不同的文件對應不同的功能需求。

為了訪問入口的統(tǒng)一,V8.0同時提供了api/json.php文件,可以通過傳遞文件名參數 api/json.php?file=demo 來訪問 api/json/demo.inc.php

api/json.php代碼如下:

<?php
require '../common.inc.php';
require DT_ROOT.'/include/post.func.php';
(isset($file) && check_name($file)) or $file = 'demo';
@include DT_ROOT.'/api/json/'.$file.'.inc.php';
?>

api/json/demo.inc.php代碼如下:

<?php
defined('IN_DESTOON') or exit('Access Denied');
$lists = array();
$result = $db->query("SELECT itemid,title FROM {$DT_PRE}webpage ORDER BY listorder");
while($r = $db->fetch_array($result)) {
	$lists[] = $r;
}
echo json_encode($lists);
?>

例如需要調用新聞數據,可以使用如下兩種方法實現:

一、創(chuàng)建 api/json/news.php ,參考 api/json/demo.php 編寫邏輯,通過 網站地址/api/json/news.php 訪問

二、創(chuàng)建 api/json/news.inc.php ,參考 api/json/demo.inc.php 編寫邏輯,通過 網站地址/api/json.php?file=news 訪問

建議使用第二種方式進行開發(fā),如果需要對訪問進行認證,數據進行加密等可以直接在api/json.php中統(tǒng)一處理。

數據 JSON API 接口 APP 小程序
以上內容是否對您有幫助?點擊反饋加群交流

 
公司簡介   |   聯(lián)系方式   |   合作代理   |   隱私政策   |   使用協(xié)議   |   意見反饋