接口写法流程
<?php
header("Content-type: text/html; charset=utf-8");
// 包含数据库配置信息
include_once('../config.php');
// 接收数据
// $id = isset($_REQUEST['id'])?$_REQUEST['id']:'';
// 用于返回数据
$return = array();
$data = array();
/* mysqli 面向对象 编程方式 */
// 1 . 创建数据库链接
$conn = new mysqli($servername,$username,$password,$database);
if ($conn->connect_error) {
die("连接失败 : ".$conn->connect_error);
}
// echo "链接成功";
// 设置字符集(以防出错 每次都要写)
$conn->query("SET NAMES utf8");
// 2 . 数据操作
$sql = "SELECT * FROM mission_news order by turn;";
// 3 . 执行一条语句
$ret = $conn->query($sql);
// 显示查询 结果 结构
// var_dump($ret); // 为什么为空
// echo $ret->num_rows; // 有值
// 4 . 循环获取每条记录
if ($ret->num_rows > 0) {
while ($row = $ret->fetch_assoc()) { //将每条记录以 数组形式 返回
// var_dump($row);
// echo "id = ".$row['id']." mid = ".$row['mid']." context = ".$row['context']."<br>";
$tmp = array();//临时数组整合信息
$tmp['id'] = $row['id'];
$tmp['mid'] = $row['mid'];
$tmp['context'] = $row['context'];
$tmp['turn'] = $row['turn'];
$tmp['created'] = $row['created'];
// 临时数组 拼接到 返回的数组中
$data[] = $tmp; // 自增
}
// 拼接返回数组
$return['result'] = 1;
$return['data'] = $data;
}
// var_dump($return);
// 5 . 关闭数据库
$conn->close();
// 6 . 编码为json字符串返回
echo json_encode($return);
?>
其中 config.php 文件内包含数据库配置信息和定义路径常亮;
<?php
// 定义路径常量
define(URL,"http://www.web.com/test");
// 设置数据库信息
$servername = "localhost";
$username = "root";
$password = "";
$database = "fudan";
?>
前端获取数据写法
<?php
header("Content-type: text/html; charset=utf-8");
include_once("./config.php");
// 读取到的是json字符串
/*不可以使用相对路径 要使用全域名执行php文件后获取 echo 输出的内容 如果使用相对路径 则不执行php文件 而是输出所有字符信息 */
$data = file_get_contents(URL."/interfaces/back.php");
// json解码为 php 对象 或 数组($data = json_decode($data,true);)
$data = json_decode($data);
var_dump($data);
?>
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>