【问题标题】:PHP: Give a name to an array of JSON objects?PHP:为 JSON 对象数组命名?
【发布时间】:2013-08-22 10:07:51
【问题描述】:

我已经设法从 PHP 文件中的数据库中获取数据。 从那里(data.php),

$output = json_encode($result);

结果会是这样,

$output=[{"kitty":"Whitely"},{"kitty":"Tabby"},{"kitty":"Ruby"},{"kitty":"Silver"}]

那么我如何给名称“kitten”一个 php 格式的 kitty 对象数组?

比如喜欢

"kitten":[{"kitty":"Whitely"},{"kitty":"Tabby"},{"kitty":"Ruby"},{"kitty":"Silver"}]

【问题讨论】:

    标签: php json


    【解决方案1】:

    试试这个:

    <?php
    
    $kitty = array('kitten' => array());
    $kitty['kitty'][] = array('kitty' => 'Tabby');
    $kitty['kitty'][] = array('kitty' => 'Ruby');
    $kitty['kitty'][] = array('kitty' => 'Silver');
    
    var_dump($kitty);
    var_dump(json_encode($kitty));
    

    导致:{"kitty":[{"kitty":"Tabby"},{"kitty":"Ruby"},{"kitty":"Silver"}]}

    【讨论】:

    • @user1739825 请参阅我的答案。
    【解决方案2】:

    您必须将结果包装在“小猫”键上的另一个数组中:

    $output = json_encode(['kitten' => $result]);
    

    【讨论】:

      【解决方案3】:

      使用嵌套的encodedecode

      $json = '[{"kitty":"Whitely"},{"kitty":"Tabby"},{"kitty":"Ruby"},{"kitty":"Silver"}]';
      
      echo json_encode(array('kitten' => json_decode($json)));
      

      【讨论】:

        【解决方案4】:

        尝试使用这个

        $output['kitty'][] = json_encode($result);
        

        【讨论】:

          【解决方案5】:
           $result =array('kitten'=> $output);
          

          输出

          {
          "kitten":[
                    {"kitty":"Whitely"},
                    {"kitty":"Tabby"},
                    {"kitty":"Ruby"},
                    {"kitty":"Silver"}
                  ]
          }
          

          【讨论】:

            猜你喜欢
            • 2018-05-03
            • 1970-01-01
            • 2014-11-09
            • 1970-01-01
            • 1970-01-01
            • 2021-12-13
            • 2016-05-08
            相关资源
            最近更新 更多