Heim > Artikel > Backend-Entwicklung > javascript - Wie gibt PHP ein JSON-Objekt zurück, wenn es auf Ajax antwortet?
Ist das die Art und Weise, wie man einen JSON-String wiedergibt?
<code>function my() { ... echo {"code":"NO_ERROR","msg":"获取系统参数成功"} }</code>
Ist das die Art und Weise, wie man einen JSON-String wiedergibt?
<code>function my() { ... echo {"code":"NO_ERROR","msg":"获取系统参数成功"} }</code>
<code>$.ajax({ type: "GET", url: "http://www.example.com/json.php", data: {name:"ele", pass:"123"}, //这里的data是参数,跟下面回调函数里服务器返回的data不是一个东西 success: function(data){ console.log(data); } }); <?php $arr = array( 'code' => 'NO_ERROR', 'msg' => '获取系统参数成功', ); header('Content-Type: application/json; charset=utf-8'); echo json_encode($arr);</code>
Obwohl ich Ihr spezifisches Problemszenario nicht kenne, werde ich auf der Grundlage meiner Entwicklungserfahrung antworten. Ich bin darauf gestoßen, dass json ein leeres Array aufruft, und Java kann es derzeit nicht erkennen Sie müssen erneut beurteilen, ob das von Ihnen übergebene Objekt leer ist: json_encode(array('data' => (empty($data) ? new stdclass() : $data)))
Es ist leicht, Fehler zu machen, wenn man selbst Zeichenfolgen schreibt, z. B. spezielle Zeichenfolgen usw. Es wird empfohlen, json_encode($obj) zu verwenden, eine leistungsstarke PHP-Methode
Tatsächlich ist es nicht notwendig, so zu schreiben. Es wird normalerweise als Array geschrieben. Dann reicht json_encode
$this->ajaxReturn(json_encode($data), "JSON");