php抓取网页json数据(PHP代码是模仿菜鸟教程上的“PHP数据库”PHP教程)
优采云 发布时间: 2021-11-30 16:15php抓取网页json数据(PHP代码是模仿菜鸟教程上的“PHP数据库”PHP教程)
写在前面
我的需求是微信小程序访问网站发布页面的php,php登录数据库获取数据。但是问题是服务器返回的数据是string类型的,不想做string处理,所以想把返回的数据做成json格式。
PHP
代码是模仿菜鸟教程上的《PHP数据库》PHP数据库教程编写的。网页截图如下:
根据我的项目,我写了如下php:
其实上面的json_encode()可以将数组转成json格式输出。假设单个echo的输出为{...},那么服务器响应给客户端返回的数据为{...},为json格式;但是经过多次回显,响应数据为{...}{...}{...},数据以“{...}{...}”的字符串形式传递给客户端{...}”,如下图所示。 (图片没有截断,但可以看出不是json格式,是一串“{…}{…}{…}”)
了解问题后,我的方案是:
1.先定义一个空数组:$row1=array();
2.在每个循环中将 $row 推入数组 $row1: array_push( $row1, $row[“code”]);
3.最后:echo json_encode( $row1);
变化如下:
if ($result->num_rows > 0) {
$row1=array();
while($row = $result->fetch_assoc()) {
array_push($row1,$row);
}
echo json_encode($row1);
} else {
echo "0 ";
}
理论上,数据的形式是[{…},{…},{…}]。然后看小程序控制台的输出:
嘿,我觉得很舒服。其实很简单,但是对于没有PHP基础的我来说,从知道json_encode()函数到解决问题花了将近一个下午的时间。
附上下午找到的一些链接:
php 数组:
MySQLi 官方手册: