【发布时间】:2016-05-20 17:33:19
【问题描述】:
我有一个使用 sql 语句以下列方式填充的数组:
$index = 0;
while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC))
{
$bookname[$index] = ($row['Bookname']);
$subjectname[$index] = ($row['SubjectName']);
$index++;
}
当我去 echo json 对数组进行编码时,当我知道它已被填充时,我得到一个空白 [],这真的很奇怪。 我在我的上下文中做错了什么
echo json_encode($Bookname,$SubjectName);
【问题讨论】:
-
json_encode()的第二个参数设置如何编码数据的选项。不要在那个地方使用你的一些数据,否则你会得到非常奇怪的结果。见php.net/manual/en/function.json-encode.php -
@maxhb 即使有一个参数也可以使用 $bookname 在我测试 echo $Bookname[2]; 时它仍然给出 [];它工作得很好并打印了那个元素!
-
使用
var_dump(json_encode($Bookname));或var_dump(json_encode($SubjectName));你不能使用echo打印object或array