1

我有一个简单的函数,它输出一个数组,然后我可以只使用“json_encode”这工作正常。但现在我需要多次这样做。

while($row = mysql_fetch_assoc($resultsol)) {
                    $all[] = jsonoutput("$row[appid]");
}

但是当我 json_encode($all) 这个时,它会有第一个“标题”类的说话。这是我不想要的。

我现在得到的(显示示例部分)

[
  - {
      - Firstentry: {
    info1: "bla",
    info2: "bla2",
        cell {
            color: "green",

但我想要的是:

{
      - Firstentry: {
    info1: "bla",
    info2: "bla2",
        cell {
            color: "green",

我看到了 2 种可能的解决方案,json_encode 应该从更深/更低的级别开始(总是将它们混合在一起),或者应该在 json_encode 之前删除第一个数组。

无论哪种方式,我都迷失在两者之间。任何帮助将不胜感激。

更新:添加数组输出:

好的:

object(stdClass)#1 (1) { ["Firstentry"]=> object(stdClass)#2 (11) { ["info1"]=> string(3) "bla" ["info2"]=> string(3) "bla2"

错误的:

array(63) { [0]=> object(stdClass)#1 (1) { ["Firstentry"]=> object(stdClass)#2 (10) { ["info1"]=> string(3) "bla" ["info2"]=> string(3) "bla2" 

ps 该函数在jsonoutput上面调用,但这只是输出一个数组,最后我对其进行json_encode。

4

1 回答 1

1

我通过将其更改为:

            while($row = mysql_fetch_array($resultsol)) {
                    $output = jsonoutput("$row[appid]");
                    $all = array_merge($all, (array) $output);
            }

然后做 json_encode。

于 2013-06-25T16:07:08.813 回答