preg_replace_callback
symfony/var-dumper
Supported Versions: PHP 4 >= 4.0.5, PHP 5, PHP 7, PHP 8
Perform a regular expression search and replace using a callback
preg_replace_callback
(
string
|array
$pattern
,
callable $callback
,
string
|array
$subject
,
int $limit
= -
1
,
int
&
$count
=
null
,
int $flags
=
0
):
string
|array|
null
}
if (
str_contains
(
$identifier
,
"@anonymous\0"
)) {
$this
->
value
=
$identifier
=
preg_replace_callback
(
'/[a-zA-Z_\x7f-\xff][\\\\a-zA-Z0-9_\x7f-\xff]*+@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/'
, function (
$m
) {
return
class_exists
(
$m
[
0
],
false
) ? (
get_parent_class
(
$m
[
0
]) ?:
key
(
class_implements
(
$m
[
0
])) ?:
'class'
).
'@anonymous'
:
$m
[
0
];
},
$identifier
);
}
if (
null
!==
$callable
&&
$r
instanceof
\ReflectionFunctionAbstract
) {
Caster/ClassStub.php
unset(
$a
[
$xPrefix
.
'string'
],
$a
[
Caster
::
PREFIX_DYNAMIC
.
'xdebug_message'
],
$a
[
Caster
::
PREFIX_DYNAMIC
.
'__destructorException'
]);
if (isset(
$a
[
Caster
::
PREFIX_PROTECTED
.
'message'
]) &&
str_contains
(
$a
[
Caster
::
PREFIX_PROTECTED
.
'message'
],
"@anonymous\0"
)) {
$a
[
Caster
::
PREFIX_PROTECTED
.
'message'
] =
preg_replace_callback
(
'/[a-zA-Z_\x7f-\xff][\\\\a-zA-Z0-9_\x7f-\xff]*+@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/'
, function (
$m
) {
return
class_exists
(
$m
[
0
],
false
) ? (
get_parent_class
(
$m
[
0
]) ?:
key
(
class_implements
(
$m
[
0
])) ?:
'class'
).
'@anonymous'
:
$m
[
0
];
},
$a
[
Caster
::
PREFIX_PROTECTED
.
'message'
]);
}
if (isset(
$a
[
Caster
::
PREFIX_PROTECTED
.
'file'
],
$a
[
Caster
::
PREFIX_PROTECTED
.
'line'
])) {
Caster/ExceptionCaster.php
$map
= static::
$controlCharsMap
;
$startCchr
=
$this
->
colors
?
"\033[m\033[
{
$this
->
styles
[
'default'
]}
m"
:
''
;
$endCchr
=
$this
->
colors
?
"\033[m\033[
{
$this
->
styles
[
$style
]}
m"
:
''
;
$value
=
preg_replace_callback
(static::
$controlCharsRx
, function (
$c
) use (
$map
,
$startCchr
,
$endCchr
) {
$s
=
$startCchr
;
$c
=
$c
[
$i
=
0
];
do {
$s
.=
$map
[
$c
[
$i
]] ??
sprintf
(
'\x%02X'
,
\ord
(
$c
[
$i
]));
} while (isset(
$c
[++
$i
]));
return
$s
.
$endCchr
;
},
$value
, -
1
,
$cchrCount
);
if (
$this
->
colors
) {
if (
$cchrCount
&&
"\033"
===
$value
[
0
]) {
Dumper/CliDumper.php
}
}
$v
=
"<span class=sf-dump-
{
$style
}
>"
.
preg_replace_callback
(static::
$controlCharsRx
, function (
$c
) use (
$map
) {
$s
=
$b
=
'<span class="sf-dump-default'
;
$c
=
$c
[
$i
=
0
];
if (
$ns
=
"\r"
===
$c
[
$i
] ||
"\n"
===
$c
[
$i
]) {
$s
.=
' sf-dump-ns'
;
}
$s
.=
'">'
;
do {
if ((
"\r"
===
$c
[
$i
] ||
"\n"
===
$c
[
$i
]) !==
$ns
) {
$s
.=
'</span>'
.
$b
;
if (
$ns
= !
$ns
) {
$s
.=
' sf-dump-ns'
;
}
$s
.=
'">'
;
}
$s
.=
$map
[
$c
[
$i
]] ??
sprintf
(
'\x%02X'
,
\ord
(
$c
[
$i
]));
} while (isset(
$c
[++
$i
]));
return
$s
.
'</span>'
;
},
$v
).
'</span>'
;
if (isset(
$attr
[
'file'
]) &&
$href
=
$this
->
getSourceLink
(
$attr
[
'file'
],
$attr
[
'line'
] ??
0
)) {
$attr
[
'href'
] =
$href
;
Dumper/HtmlDumper.php