Code
Explorer
You are a developer and looking for Shopware projects?
Apply Now!
ContextualizedDumper example
class
ContextualizedDumperTest
extends
TestCase
{
public
function
testContextualizedCliDumper
(
)
{
$wrappedDumper
=
new
CliDumper
(
'php://output'
)
;
$wrappedDumper
->
setColors
(
true
)
;
$var
= 'example';
$href
=
sprintf
(
'file://%s#L%s', __FILE__, 37
)
;
$dumper
=
new
ContextualizedDumper
(
$wrappedDumper
,
[
new
SourceContextProvider
(
)
]
)
;
$cloner
=
new
VarCloner
(
)
;
$data
=
$cloner
->
cloneVar
(
$var
)
;
ob_start
(
)
;
$dumper
->
dump
(
$data
)
;
$out
=
ob_get_clean
(
)
;
$this
->
assertStringContainsString
(
"\e]8;;{
$href
}
\e\\^\e]",
$out
)
;
$this
->
assertStringContainsString
(
"m{
$var
}
\e[",
$out
)
;
}
}
case
'server' ===
$format
:
case
$format
&& 'tcp' ===
parse_url
(
$format
, \PHP_URL_SCHEME
)
:
$host
= 'server' ===
$format
?
$_SERVER
[
'VAR_DUMPER_SERVER'
]
?? '127.0.0.1:9912' :
$format
;
$dumper
= \
in_array
(
\PHP_SAPI,
[
'cli', 'phpdbg'
]
, true
)
?
new
CliDumper
(
)
:
new
HtmlDumper
(
)
;
$dumper
=
new
ServerDumper
(
$host
,
$dumper
, self::
getDefaultContextProviders
(
)
)
;
break
;
default
:
$dumper
= \
in_array
(
\PHP_SAPI,
[
'cli', 'phpdbg'
]
, true
)
?
new
CliDumper
(
)
:
new
HtmlDumper
(
)
;
}
if
(
!
$dumper
instanceof ServerDumper
)
{
$dumper
=
new
ContextualizedDumper
(
$dumper
,
[
new
SourceContextProvider
(
)
]
)
;
}
self::
$handler
=
function
D
$var
, string
$label
= null
)
use
(
$cloner
,
$dumper
)
{
$var
=
$cloner
->
cloneVar
(
$var
)
;
if
(
null !==
$label
)
{
$var
=
$var
->
withContext
(
[
'label' =>
$label
]
)
;
}
$dumper
->
dump
(
$var
)
;
}
;
}
case
'server' ===
$format
:
case
$format
&& 'tcp' ===
parse_url
(
$format
, \PHP_URL_SCHEME
)
:
$host
= 'server' ===
$format
?
$_SERVER
[
'VAR_DUMPER_SERVER'
]
?? '127.0.0.1:9912' :
$format
;
$dumper
= \
in_array
(
\PHP_SAPI,
[
'cli', 'phpdbg'
]
, true
)
?
new
CliDumper
(
)
:
new
HtmlDumper
(
)
;
$dumper
=
new
ServerDumper
(
$host
,
$dumper
, self::
getDefaultContextProviders
(
)
)
;
break
;
default
:
$dumper
= \
in_array
(
\PHP_SAPI,
[
'cli', 'phpdbg'
]
, true
)
?
new
CliDumper
(
)
:
new
HtmlDumper
(
)
;
}
if
(
!
$dumper
instanceof ServerDumper
)
{
$dumper
=
new
ContextualizedDumper
(
$dumper
,
[
new
SourceContextProvider
(
)
]
)
;
}
self::
$handler
=
function
D
$var
, string
$label
= null
)
use
(
$cloner
,
$dumper
)
{
$var
=
$cloner
->
cloneVar
(
$var
)
;
if
(
null !==
$label
)
{
$var
=
$var
->
withContext
(
[
'label' =>
$label
]
)
;
}
$dumper
->
dump
(
$var
)
;
}
;
}