responseText正在返回我的php文件的顶部


responseText is returning the top of my php file

我有一个使用ajax从数据库中检索数据的设置。现在,我正试图确定将一个数组从php文件发送到运行ajax的javascript。

目前我使用json编码来发送来自php文件的数据

echo json_encode($send_array);

然后,我尝试在javascript端将其作为一个数组进行检索,并对响应文本进行json解析。

JSON.parse(xhttp.responseText);

这就是它变得奇怪的地方。如果我只是打印或显示xhttp.responseText,我会得到数组的文本表示。

[1,2,3,4,5,6,7]

但是,如果我在上面运行JSON.parse,我会得到一个意外的"<"语法错误。

进一步挖掘,如果我执行xhttp.responseText[0],它将返回'<'。

通过进一步测试,我发现xhttp.responseText[4]返回"@",这是php文件顶部注释中的第四个字符。

我需要帮助弄清楚为什么xhttp.responseText以正确的格式返回文本,但尝试只检索responseText的一部分或尝试对其进行解析会返回php文件的顶部。

现在已解决。事实证明,问题是我的php文件顶部有html风格的注释。这些都是与得到回应的数据一起发送的。