我正在尝试创建一个客户端脚本来从PHP文件中获取JSON数据。我正在使用XAMPP来运行PHP脚本。当我运行demo_file.PHP时,它显示输出。但是当我尝试使用客户端脚本获取数据时,它不会显示任何结果。 demo_file.php是:
<?php
$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";
$myJSON = json_encode($myObj);
echo $myJSON;
?>
和获取json数据的demo.html是:
<!DOCTYPE html>
<html>
<body>
<h2>Get data as JSON from a PHP file on the server.</h2>
<p id="demo"></p>
<script>
var xmlhttp = new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (this.readyState == 4 && this.status == 200) {
myObj = JSON.parse(this.responseText);
document.getElementById("demo").innerHTML = myObj.name;
}
};
xmlhttp.open("GET", "demo_file.php", true);
xmlhttp.send();
</script>
</body>
</html>
答案 0 :(得分:1)
你可能会收到错误:
<b>Warning</b>: Creating default object from empty value in <b>[...][...]</b> on line <b>3</b><br />
你不能像这样直接创建对象。你首先要创建StdClass()
的实例。如下所示。
$myObj = new stdClass();//need to create instance first
$myObj->name = "John";
$myObj->age = 30;
$myObj->city = "New York";
$myJSON = json_encode($myObj);
echo $myJSON;
有关详情,请参阅此处Creating default object from empty value