gpt4 book ai didi

php - 如果 php 文件中有文本,Ajax 不会返回 json

转载 作者:行者123 更新时间:2023-12-01 06:15:14 24 4
gpt4 key购买 nike

我对 Jquery Ajax 还很陌生,如果这是一件简单的事情,我很抱歉。

所以我的问题是我想从我的 php 文件中检索一个 json 对象,但只有当我只回显一个 Json 对象时它才有效,如下所示:

<?php
header('Content-type: application/json; charset=utf-8');
$arr = array ('Lastname'=>'Doe','Firstname'=>'John','Age'=>109);
echo json_encode($arr);

当我想在 javascript 文件中回显另一个 json 或作为 json 返回的某些文本时,我没有从 ajax 调用中得到任何返回值。

  <?php
// This code doesn't work
header('Content-type: application/json; charset=utf-8');
$arr = array ('Lastname'=>'Doe','Firstname'=>'John','Age'=>109);
echo 'hi there';
$json = 'Hello people';
echo json_encode($json);
echo json_encode($arr);

我的ajax调用是这样的:

$.ajax({
url: 'test.php',
type: 'GET',
success: function (response) {
console.log(response);
}
});

所以我的最后一个问题是:我的代码有什么问题,以及 ajax 调用中不允许什么

最佳答案

您只能在响应中放入一个 JSON 对象。如果您要发送不止一件东西,只需创建一个数组:

echo json_encode([
'user' => ['Lastname'=>'Doe', 'Firstname'=>'John', 'Age'=>109],
'other' => 'some other stuff',
'more' => ['even', 'more', 'suff'],
]);

您也不希望在 JSON 之前或之后出现任何无关输出,因此请删除此内容:

echo 'hi there';

关于php - 如果 php 文件中有文本,Ajax 不会返回 json,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44421512/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com