@@ -73,7 +73,7 @@ public function dump(Data $data)
73
73
74
74
for ($ i = 1 ; $ i < 7 ; ++$ i ) {
75
75
if (isset ($ trace [$ i ]['class ' ], $ trace [$ i ]['function ' ])
76
- && ( 'dump ' === $ trace [$ i ]['function ' ] || ' debug ' === $ trace [ $ i ][ ' function ' ])
76
+ && 'dump ' === $ trace [$ i ]['function ' ]
77
77
&& 'Symfony\Component\VarDumper\VarDumper ' === $ trace [$ i ]['class ' ]
78
78
) {
79
79
$ file = $ trace [$ i ]['file ' ];
@@ -152,66 +152,29 @@ public function getDumpsCount()
152
152
return $ this ->dataCount ;
153
153
}
154
154
155
- public function getDumpsExcerpts ( )
155
+ public function getDumps ( $ format , $ maxDepthLimit = - 1 , $ maxItemsPerDepth = - 1 )
156
156
{
157
- $ dumps = array ();
158
-
159
- foreach ($ this ->data as $ dump ) {
160
- $ data = $ dump ['data ' ]->getRawData ();
161
- unset($ dump ['data ' ]);
162
-
163
- $ data = $ data [0 ][0 ];
164
-
165
- if (isset ($ data ->val )) {
166
- $ data = $ data ->val ;
167
- }
168
-
169
- if (isset ($ data ->bin )) {
170
- $ data = 'b" ' .$ data ->bin .'" ' ;
171
- } elseif (isset ($ data ->str )) {
172
- $ data = '" ' .$ data ->str .'" ' ;
173
- } elseif (isset ($ data ->count )) {
174
- $ data = 'array( ' .$ data ->count .') ' ;
175
- } elseif (isset ($ data ->class )) {
176
- $ data = $ data ->class .'{...} ' ;
177
- } elseif (isset ($ data ->res )) {
178
- $ data = 'resource: ' .$ data ->res .'{...} ' ;
179
- } elseif (is_array ($ data )) {
180
- $ data = 'array() ' ;
181
- } elseif (null === $ data ) {
182
- $ data = 'null ' ;
183
- } elseif (false === $ data ) {
184
- $ data = 'false ' ;
185
- } elseif (INF === $ data ) {
186
- $ data = 'INF ' ;
187
- } elseif (-INF === $ data ) {
188
- $ data = '-INF ' ;
189
- } elseif (NAN === $ data ) {
190
- $ data = 'NAN ' ;
191
- } elseif (true === $ data ) {
192
- $ data = 'true ' ;
193
- }
194
-
195
- $ dump ['dataExcerpt ' ] = $ data ;
196
- $ dumps [] = $ dump ;
197
- }
198
-
199
- return $ dumps ;
200
- }
201
-
202
- public function getDumps ($ getData = false )
203
- {
204
- if ($ getData ) {
157
+ if ('html ' === $ format ) {
158
+ $ dumper = new HtmlDumper ();
159
+ } elseif ('json ' === $ format ) {
205
160
$ dumper = new JsonDumper ();
161
+ } else {
162
+ throw new \InvalidArgumentException (sprintf ('Invalid dump format: %s ' , $ format ));
163
+
206
164
}
207
165
$ dumps = array ();
208
166
209
167
foreach ($ this ->data as $ dump ) {
210
- $ json = '' ;
211
- if ($ getData ) {
212
- $ dumper ->dump ($ dump ['data ' ], function ($ line ) use (&$ json ) {$ json .= $ line ;});
213
- }
214
- $ dump ['data ' ] = $ json ;
168
+ $ data = '' ;
169
+ $ dumper ->dump (
170
+ $ dump ['data ' ]->getLimitedClone ($ maxDepthLimit , $ maxItemsPerDepth ),
171
+ function ($ line , $ depth ) use (&$ data ) {
172
+ if (false !==$ depth ) {
173
+ $ data .= str_repeat (' ' , $ depth ).$ line ."\n" ;
174
+ }
175
+ }
176
+ );
177
+ $ dump ['data ' ] = $ data ;
215
178
$ dumps [] = $ dump ;
216
179
}
217
180
0 commit comments