对json_decode变量PHP的var_dump

时间:2014-01-28 12:41:08

标签: php json var-dump

快速提问,我正在对php中的json_decode变量执行var_dump,如下所示:

var_dump(json_decode($some_Variable, true));

而且,因为$ some_Variable是一个很长的json字符串,它在我的浏览器中显示如下:

array (size=10)
      0 => 
        array (size=14)
          'gameId' => int 1290161341
          'invalid' => boolean false
          'gameMode' => string 'CLASSIC' (length=7)
          'gameType' => string 'MATCHED_GAME' (length=12)
          'subType' => string 'RANKED_SOLO_5x5' (length=15)
          'mapId' => int 1
          'teamId' => int 200
          'championId' => int 55
          'spell1' => int 4
          'spell2' => int 14
          'level' => int 30
          'createDate' => float 1390601626963
          'fellowPlayers' => 
            array (size=9)
              ...
          'statistics' => 
            array (size=44)
              ...
      1 => 
        array (size=14)
          'gameId' => int 1291665162
          'invalid' => boolean false
          'gameMode' => string 'CLASSIC' (length=7)
          'gameType' => string 'MATCHED_GAME' (length=12)
          'subType' => string 'RANKED_SOLO_5x5' (length=15)
          'mapId' => int 1
          'teamId' => int 200
          'championId' => int 236
          'spell1' => int 4
          'spell2' => int 21
          'level' => int 30
          'createDate' => float 1390674755052
          'fellowPlayers' => 
            array (size=9)
              ...
          'statistics' => 
            array (size=41)
              ...

(是的,它的传说联盟,我使用Riot API(http://developer.riotgames.com/)来编写一个小应用程序)。正如你所看到的,例如索引'fellowPlayers'没有向我显示其中的实际值,它只显示“...”并且统计信息相同,我怎么能这样做它显示每个索引中的所有内容?

4 个答案:

答案 0 :(得分:4)

由于json_decode返回一个数组,请尝试

$arJson = json_decode( $strJson, true );
var_dump( $arJson[ 0 ] );

由于您要打印每个元素,因此可能无法对结果进行模糊处理。

答案 1 :(得分:0)

您显然正在使用Xdebug,这是一个PHP调试扩展程序(以及其他功能)overloads the native var_dump() function,具有自己的花哨版本。您可以通过将xdebug.overload_var_dump指令设置为false来调整其设置或将其禁用。

php.ini

xdebug.overload_var_dump=0

常规PHP代码:

<?php
ini_set('xdebug.overload_var_dump', 0);

答案 2 :(得分:0)

为什么不直接转储JSON? JSON更具可读性,如果你echo它,它将不会被截断。它的格式不会很好,但您可以轻松地将其复制/粘贴到编辑器中,以便很好地格式化(很多IDE都可以这样做)。 Firefox的Scratchpad开发工具也可以做到。

答案 3 :(得分:0)

如果使用的是xampp C:\ xampp \ php \ php.ini

,请在php.ini的最后一行添加此代码。
; with sane limits
xdebug.var_display_max_depth = 10
xdebug.var_display_max_children = 256
xdebug.var_display_max_data = 1024 

; with no limits
; (maximum nesting is 1023)
xdebug.var_display_max_depth = -1 
xdebug.var_display_max_children = -1
xdebug.var_display_max_data = -1 

它为我工作了100%