V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
EXDestroyer
V2EX  ›  问与答

php 中如何输出这样的 json 数据?

  •  
  •   EXDestroyer · 2014-11-30 21:42:21 +08:00 · 3121 次点击
    这是一个创建于 3640 天前的主题,其中的信息可能已经有所发展或是发生改变。
    {"src":'426284.jpg'},{"src":'426276.jpg'},{"src":'426276.jpg'},{"src":'Karas.jpg'}

    刚学php,键值都是相同的,不知道怎么输出,尝试输出但是相同键值的都合并了
    18 条回复    2014-12-01 12:06:13 +08:00
    rrkelee
        1
    rrkelee  
       2014-11-30 21:48:01 +08:00 via Android
    感觉是个x-y problem,←_←
    Paranoid
        2
    Paranoid  
       2014-11-30 21:49:54 +08:00
    $_ = array(
    array('src' => '426284.jpg' ) ,
    array('src' => '426284.jpg' ) ,
    array('src' => '426284.jpg' ) ,
    array('src' => '426284.jpg' )
    );

    echo json_encode($_);
    orvice
        3
    orvice  
       2014-11-30 22:11:13 +08:00
    json_encode
    EXDestroyer
        4
    EXDestroyer  
    OP
       2014-11-30 22:13:41 +08:00 via Android
    @Paranoid 我是获取了文件名列表,然后需要加上src的键值src,所以是用array_combine合并的,输出的结果只有第一项
    lincanbin
        5
    lincanbin  
       2014-11-30 22:13:47 +08:00
    这显然是一个list,list里的元素是独立的dict。
    2楼是对的。
    EXDestroyer
        6
    EXDestroyer  
    OP
       2014-11-30 22:17:37 +08:00 via Android
    @orvice 知道,但是我是获取了文件名列表,然后需要加上src的键值,所以是用array_combine合并的,最后输出的结果只有第一项
    alex321
        7
    alex321  
       2014-11-30 22:22:32 +08:00
    我好奇为毛要键值相同,这种可重复的东西在程序中应该系可能避免。。
    输出后,前端接着遍历添加 src 不好么。。
    比如,js 获取到了用 each 或者 foreach 处理就好哇。
    EXDestroyer
        8
    EXDestroyer  
    OP
       2014-11-30 22:25:52 +08:00 via Android
    @alex321 。。好的我试试
    EXDestroyer
        9
    EXDestroyer  
    OP
       2014-11-30 22:54:46 +08:00
    @lincanbin 不对..他那样输出的结果会合并只有第一个数据..
    EXDestroyer
        10
    EXDestroyer  
    OP
       2014-11-30 22:57:03 +08:00
    @lincanbin 弄错了..确实是对的,刚才看错~
    Paranoid
        11
    Paranoid  
       2014-11-30 22:58:26 +08:00
    @EXDestroyer 。。。 首先,你要明白 产生你这样的 json 数据原数据需要什么样的结构 ?第二,array_combine 的怎么用的!
    iyaozhen
        12
    iyaozhen  
       2014-11-30 23:05:29 +08:00
    @EXDestroyer 我一般简单、粗暴,构造数组,一个个push进去。或者直接给前端传文件名列表。
    lincanbin
        13
    lincanbin  
       2014-11-30 23:48:38 +08:00
    watsy0007
        14
    watsy0007  
       2014-12-01 11:17:08 +08:00
    {"src":'426284.jpg'},{"src":'426276.jpg'},{"src":'426276.jpg'},{"src":'Karas.jpg'}

    很明显是这样的
    {"src":{'426284.jpg','426276.jpg','426276.jpg','Karas.jpg'}
    a591826944
        15
    a591826944  
       2014-12-01 11:38:39 +08:00
    既然键值都相同 那还要键值干啥?
    EXDestroyer
        16
    EXDestroyer  
    OP
       2014-12-01 12:05:42 +08:00
    @a591826944 原谅我打错了。。键名才对
    EXDestroyer
        17
    EXDestroyer  
    OP
       2014-12-01 12:05:59 +08:00
    @lincanbin 暂时不想用库
    EXDestroyer
        18
    EXDestroyer  
    OP
       2014-12-01 12:06:13 +08:00
    @watsy0007 谢谢,明白了!
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   4800 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 05:35 · PVG 13:35 · LAX 21:35 · JFK 00:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.