我是JSON的新手,我正在编写一个PHP脚本,从远程MySQL数据库获取所有数据以导入ios sqlite数据库。我的计划是从每个数据库中获取所有表并将其发送到另一个数据库,并检查rowid是否在正确的表中,如果是,则将其丢弃,如果不将其添加到该数据库中,基本上是添加数据库中没有的任何行。
我正在尝试从远程MySql服务器读取我的JSON输出,但我不太理解它,也找不到任何好的资源。对于我的登录表,我像这样拉它:
$query = "SELECT * from answers";
$result = $this->db->query($query) or die('Errant query: '.$query);
$answers = array();
$answers=mysqli_fetch_array($result);
header('Content-type: application/json');
echo json_encode(array(
'login'=>$login,
'answers'=>$answers,
'projects'=>$projects,
'questions'=>$questions,
'surveys'=>$surveys,
));
然后,当我读取输出时,它显示了登录表:
{"login":{"0":"1","userid":"1","1":"test","password":"test","2":"1","aclevel":"1"},
登录表有三列:用户标识、密码和权限。此表填写的分别为1、测试、1。
有人可以向我解释 JSON 的输出是什么意思吗?
请参阅文档以了解mysql_fetch_array。
如果缺少第二个参数,它将返回一个同时包含数字和字段索引的数组。这将生成如下所示的数组:
array (
'field1' => value1,
0 => value1,
'field2' => value2,
1 => value2,
...
)
用:
mysql_fetch_array($result, MYSQL_ASSOC);
// OR...
mysql_fetch_assoc($result);
检索数据并查看会发生什么。