在php中,我正在将一个数组转换为JSON字符串.
如果我对它们进行硬编码,这是有效的:
$data = array(
'firstname' => mysql_result($recordset, 0, 'first name'),
'lastname' => mysql_result($recordset, 0, 'last name'),
'email' => mysql_result($recordset, 0, 'email address'),
'password' => mysql_result($recordset, 0, 'password'),
'phone' => mysql_result($recordset, 0, 'mobile number'),
'website' => mysql_result($recordset, 0, 'website link'),
'type' => mysql_result($recordset, 0, 'type_id'),
'active' => mysql_result($recordset, 0, 'active'),
'datejoined' => mysql_result($recordset, 0, 'date joined'),
'dateleft' => mysql_result($recordset, 0, 'date left'),
'datelastactive' => mysql_result($recordset, 0, 'date last active'),
'status' => mysql_result($recordset, 0, 'status'),
'biotext' => mysql_result($recordset, 0, 'bio text'),
'picURL' => $picURL
);
Run Code Online (Sandbox Code Playgroud)
但是,如果我尝试循环
$data = array();
for ($i = 0; $i < $num_records; $i++) {
array_push($data, "location{$i}" => mysql_result($recordset, $i, 'location'));
}
Run Code Online (Sandbox Code Playgroud)
我收到了错误
Parse error: syntax error, unexpected T_DOUBLE_ARROW
Run Code Online (Sandbox Code Playgroud)
有谁知道如何解决这一问题?
谢谢
尝试
$data = array();
for ($i = 0; $i < $num_records; $i++) {
$data["location{$i}"] = mysql_result($recordset, $i, 'location');
}
Run Code Online (Sandbox Code Playgroud)
使它成为关联的,然后
$myJSON = json_encode($data);
Run Code Online (Sandbox Code Playgroud)
获得JSON