duan0414 2012-07-19 10:16
浏览 408
已采纳

将多维php数组转换为JSON对象数组

I need to create a multi-dimensional array in php and want to use it in a jQuery script as a JSON array of objects;

The required output in the jQuery script should look like this:

data = [
        { Month:'April', Comms:1000, Fees:200, Gains: 200},
        { Month:'May',   Comms:1200, Fees:300, Gains: 300}
        ]   

Currently my php arrays are generated as follow:

    $data1[] = array(
        'Month' => 'April',
        'Comms' => 1000,
        'Fees'  => 200,
        'Gains' => 200      
    );      
    $data2[] = array(
        'Month' => 'May',
        'Comms' => 1200,
        'Fees'  => 300,
        'Gains' => 300      
    );

    echo json_encode($data);

My question is how to combine data1 and data2 into the data array in the json_encode php function which will produce the required jQuery JSON array of objects?

I do have the values of the different array fields and can create data1 and data2 in a different way, so the data is flexible and I can combine them in any other way which will produce the data array which will output them in the required JSON format.

Any help will be highly appreciated, I have seen question regarding this subject but none which address the issue I am facing.

  • 写回答

6条回答 默认 最新

  • douwu8060 2012-07-19 10:24
    关注

    You'll want to merge both Arrays into a new Array of Arrays. See the manual for more information.

    $data = array_merge($data1, $data2);
    echo json_encode($data)
    

    or, more simply by using the + operator:

    echo json_encode($data1 + $data2)
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥20 蓝牙耳机怎么查看日志
  • ¥15 Fluent齿轮搅油
  • ¥15 八爪鱼爬数据为什么自己停了
  • ¥15 交替优化波束形成和ris反射角使保密速率最大化
  • ¥15 树莓派与pix飞控通信
  • ¥15 自动转发微信群信息到另外一个微信群
  • ¥15 outlook无法配置成功
  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏