[VarDumper] Adapt to php 7.2 changes
This commit is contained in:
parent
ee58cfcf10
commit
3c2f5f7a24
@ -54,7 +54,7 @@ class Caster
|
|||||||
if ($a) {
|
if ($a) {
|
||||||
$p = array_keys($a);
|
$p = array_keys($a);
|
||||||
foreach ($p as $i => $k) {
|
foreach ($p as $i => $k) {
|
||||||
if (isset($k[0]) && "\0" !== $k[0] && !$reflector->hasProperty($k)) {
|
if (isset($k[0]) ? "\0" !== $k[0] && !$reflector->hasProperty($k) : \PHP_VERSION_ID >= 70200) {
|
||||||
$p[$i] = self::PREFIX_DYNAMIC.$k;
|
$p[$i] = self::PREFIX_DYNAMIC.$k;
|
||||||
} elseif (isset($k[16]) && "\0" === $k[16] && 0 === strpos($k, "\0class@anonymous\0")) {
|
} elseif (isset($k[16]) && "\0" === $k[16] && 0 === strpos($k, "\0class@anonymous\0")) {
|
||||||
$p[$i] = "\0".$reflector->getParentClass().'@anonymous'.strrchr($k, "\0");
|
$p[$i] = "\0".$reflector->getParentClass().'@anonymous'.strrchr($k, "\0");
|
||||||
|
@ -141,6 +141,20 @@ EOTXT
|
|||||||
$var[] = &$v;
|
$var[] = &$v;
|
||||||
$var[''] = 2;
|
$var[''] = 2;
|
||||||
|
|
||||||
|
if (\PHP_VERSION_ID >= 70200) {
|
||||||
|
$this->assertDumpMatchesFormat(
|
||||||
|
<<<'EOTXT'
|
||||||
|
array:4 [
|
||||||
|
0 => {}
|
||||||
|
1 => &1 null
|
||||||
|
2 => &1 null
|
||||||
|
"" => 2
|
||||||
|
]
|
||||||
|
EOTXT
|
||||||
|
,
|
||||||
|
$var
|
||||||
|
);
|
||||||
|
} else {
|
||||||
$this->assertDumpMatchesFormat(
|
$this->assertDumpMatchesFormat(
|
||||||
<<<'EOTXT'
|
<<<'EOTXT'
|
||||||
array:4 [
|
array:4 [
|
||||||
@ -154,12 +168,24 @@ EOTXT
|
|||||||
$var
|
$var
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function testObjectCast()
|
public function testObjectCast()
|
||||||
{
|
{
|
||||||
$var = (object) array(1 => 1);
|
$var = (object) array(1 => 1);
|
||||||
$var->{1} = 2;
|
$var->{1} = 2;
|
||||||
|
|
||||||
|
if (\PHP_VERSION_ID >= 70200) {
|
||||||
|
$this->assertDumpMatchesFormat(
|
||||||
|
<<<'EOTXT'
|
||||||
|
{
|
||||||
|
+"1": 2
|
||||||
|
}
|
||||||
|
EOTXT
|
||||||
|
,
|
||||||
|
$var
|
||||||
|
);
|
||||||
|
} else {
|
||||||
$this->assertDumpMatchesFormat(
|
$this->assertDumpMatchesFormat(
|
||||||
<<<'EOTXT'
|
<<<'EOTXT'
|
||||||
{
|
{
|
||||||
@ -171,6 +197,7 @@ EOTXT
|
|||||||
$var
|
$var
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public function testClosedResource()
|
public function testClosedResource()
|
||||||
{
|
{
|
||||||
|
@ -203,7 +203,7 @@ object(Symfony\Component\VarDumper\Cloner\Data)#%i (4) {
|
|||||||
EOTXT;
|
EOTXT;
|
||||||
ob_start();
|
ob_start();
|
||||||
var_dump($clone);
|
var_dump($clone);
|
||||||
$this->assertStringMatchesFormat($expected, ob_get_clean());
|
$this->assertStringMatchesFormat(\PHP_VERSION_ID >= 70200 ? str_replace('"1"', '1', $expected) : $expected, ob_get_clean());
|
||||||
}
|
}
|
||||||
|
|
||||||
public function testCaster()
|
public function testCaster()
|
||||||
|
Reference in New Issue
Block a user