php + ajax|可接收兩個以上 ajax 的回傳嗎?

$.ajax({
      type: "GET",
      url: "url.php",
      success: function(data){
}

假設我用這樣打過去
如果印出 console.log(data) 可以印出我在 url.php 所 echo 的東西
但假設我需要接收兩個以上的回傳怎麼辦?能不能分開?

比如說我在 url.php 回傳

    echo 'ok';
    echo 'some data';

如果直接印出來會變成

oksome data

但我 ajax 這邊第一個要確認是否 ok,第二我要讓他帶數據回來而不只有 ok,我還想夾帶其他的數據
請問這怎麼實現?


白猪掌柜的
浏览 319回答 3
3回答

慕容3067478

后端返回json数据!echo json_encode(['status' => 'ok', 'data' => '...']);function({status,data}) {    // status => ok    // data => ... }

心有法竹

可以直接return json数据return json_encode(['status'=>somestatus,'message'=>messagevalue]);不过值得注意的是,在某些特殊情况下不能前端是无法解析后台phpjson_encode出来的json的(原因:json_code函数出来的json不是严格意义上的json数据,所以前端无法解析)那么,可以写一个arrayToJson的全局函数$array = ['a'=>1,'b'=>2,'c'=>3];foreach($array as $k=>$v) $list[] = sprintf('"%s":"%s"', $k, $v);echo '{' . join(',', $list) . '}';这样就完成了一个json的拼接,对于严格模式来说也可以使用的json数据了

翻过高山走不出你

返回json数组了解一下
打开App,查看更多内容
随时随地看视频慕课网APP