Find this useful? Enter your email to receive occasional updates for securing PHP code.
Signing you up...
Thank you for signing up!
PHP Decode
--TEST-- Test debug_zval_dump() function : basic operations --SKIPIF-- <?php if (PHP_INT_S..
Decoded Output download
--TEST--
Test debug_zval_dump() function : basic operations
--SKIPIF--
<?php
if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
?>
--INI--
precision=14
opcache.enable=0
--FILE--
<?php
/* creating file resource */
$file_handle = fopen(__FILE__, "r");
echo "*** Testing debug_zval_dump() on scalar and non-scalar variables ***
";
$values = array (
/* integers */
0, // zero as argument
000000123, //octal value of 83
123000000,
-00000123, //octal value of 83
-12300000,
0xffffff, //hexadecimal value
123456789,
1,
-1,
/* floats */
-0.0,
+0.0,
1.234,
-1.234,
-2.000000,
2.0000000,
-4.0001e+5,
4.0001E+5,
6.99999989,
-.5,
.567,
-.6700000e-3,
-.6700000E+3,
1E-5,
-1e+5,
1e+5,
1E-5,
/* strings */
"",
'',
" ",
' ',
"0",
"",
'',
" ",
' ',
"PHP",
'PHP',
"1234
5678
9100
abcda00cdehstuv", // strings with escape chars
/* boolean */
TRUE,
FALSE,
true,
false,
/* arrays */
array(),
array(NULL),
array(true),
array(""),
array(''),
array(array(1, 2), array('a', 'b')),
array("test" => "is_array", 1 => 'One'),
array(0),
array(-1),
array(10.5, 5.6),
array("string", "test"),
array('string', 'test'),
/* resources */
$file_handle
);
/* loop to display the variables and its reference count using
debug_zval_dump() */
$counter = 1;
foreach( $values as $value ) {
echo "-- Iteration $counter --
";
debug_zval_dump( $value );
$counter++;
}
/* closing resource handle */
fclose($file_handle);
echo "Done
";
?>
--EXPECTF--
*** Testing debug_zval_dump() on scalar and non-scalar variables ***
-- Iteration 1 --
int(0)
-- Iteration 2 --
int(83)
-- Iteration 3 --
int(123000000)
-- Iteration 4 --
int(-83)
-- Iteration 5 --
int(-12300000)
-- Iteration 6 --
int(16777215)
-- Iteration 7 --
int(123456789)
-- Iteration 8 --
int(1)
-- Iteration 9 --
int(-1)
-- Iteration 10 --
float(-0)
-- Iteration 11 --
float(0)
-- Iteration 12 --
float(1.234)
-- Iteration 13 --
float(-1.234)
-- Iteration 14 --
float(-2)
-- Iteration 15 --
float(2)
-- Iteration 16 --
float(-400010)
-- Iteration 17 --
float(400010)
-- Iteration 18 --
float(6.99999989)
-- Iteration 19 --
float(-0.5)
-- Iteration 20 --
float(0.567)
-- Iteration 21 --
float(-0.00067)
-- Iteration 22 --
float(-670)
-- Iteration 23 --
float(1.0E-5)
-- Iteration 24 --
float(-100000)
-- Iteration 25 --
float(100000)
-- Iteration 26 --
float(1.0E-5)
-- Iteration 27 --
string(0) "" interned
-- Iteration 28 --
string(0) "" interned
-- Iteration 29 --
string(1) " " interned
-- Iteration 30 --
string(1) " " interned
-- Iteration 31 --
string(1) "0" interned
-- Iteration 32 --
string(1) "%0" interned
-- Iteration 33 --
string(2) "" interned
-- Iteration 34 --
string(1) " " interned
-- Iteration 35 --
string(2) " " interned
-- Iteration 36 --
string(3) "PHP" interned
-- Iteration 37 --
string(3) "PHP" interned
-- Iteration 38 --
string(34) "1234
5678
9100
abcda%000cdeh%0stuv" interned
-- Iteration 39 --
bool(true)
-- Iteration 40 --
bool(false)
-- Iteration 41 --
bool(true)
-- Iteration 42 --
bool(false)
-- Iteration 43 --
array(0) interned {
}
-- Iteration 44 --
array(1) refcount(%d){
[0]=>
NULL
}
-- Iteration 45 --
array(1) refcount(%d){
[0]=>
bool(true)
}
-- Iteration 46 --
array(1) refcount(%d){
[0]=>
string(0) "" interned
}
-- Iteration 47 --
array(1) refcount(%d){
[0]=>
string(0) "" interned
}
-- Iteration 48 --
array(2) refcount(%d){
[0]=>
array(2) refcount(%d){
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(2) refcount(%d){
[0]=>
string(1) "a" interned
[1]=>
string(1) "b" interned
}
}
-- Iteration 49 --
array(2) refcount(%d){
["test"]=>
string(8) "is_array" refcount(%d)
[1]=>
string(3) "One" refcount(%d)
}
-- Iteration 50 --
array(1) refcount(%d){
[0]=>
int(0)
}
-- Iteration 51 --
array(1) refcount(%d){
[0]=>
int(-1)
}
-- Iteration 52 --
array(2) refcount(%d){
[0]=>
float(10.5)
[1]=>
float(5.6)
}
-- Iteration 53 --
array(2) refcount(%d){
[0]=>
string(6) "string" refcount(%d)
[1]=>
string(4) "test" refcount(%d)
}
-- Iteration 54 --
array(2) refcount(%d){
[0]=>
string(6) "string" refcount(%d)
[1]=>
string(4) "test" refcount(%d)
}
-- Iteration 55 --
resource(%d) of type (stream) refcount(%d)
Done
Did this file decode correctly?
Original Code
--TEST--
Test debug_zval_dump() function : basic operations
--SKIPIF--
<?php
if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
?>
--INI--
precision=14
opcache.enable=0
--FILE--
<?php
/* creating file resource */
$file_handle = fopen(__FILE__, "r");
echo "*** Testing debug_zval_dump() on scalar and non-scalar variables ***\n";
$values = array (
/* integers */
0, // zero as argument
000000123, //octal value of 83
123000000,
-00000123, //octal value of 83
-12300000,
0xffffff, //hexadecimal value
123456789,
1,
-1,
/* floats */
-0.0,
+0.0,
1.234,
-1.234,
-2.000000,
2.0000000,
-4.0001e+5,
4.0001E+5,
6.99999989,
-.5,
.567,
-.6700000e-3,
-.6700000E+3,
1E-5,
-1e+5,
1e+5,
1E-5,
/* strings */
"",
'',
" ",
' ',
"0",
"\0",
'\0',
"\t",
'\t',
"PHP",
'PHP',
"1234\t\n5678\n\t9100\rabcda\x0000cdeh\0stuv", // strings with escape chars
/* boolean */
TRUE,
FALSE,
true,
false,
/* arrays */
array(),
array(NULL),
array(true),
array(""),
array(''),
array(array(1, 2), array('a', 'b')),
array("test" => "is_array", 1 => 'One'),
array(0),
array(-1),
array(10.5, 5.6),
array("string", "test"),
array('string', 'test'),
/* resources */
$file_handle
);
/* loop to display the variables and its reference count using
debug_zval_dump() */
$counter = 1;
foreach( $values as $value ) {
echo "-- Iteration $counter --\n";
debug_zval_dump( $value );
$counter++;
}
/* closing resource handle */
fclose($file_handle);
echo "Done\n";
?>
--EXPECTF--
*** Testing debug_zval_dump() on scalar and non-scalar variables ***
-- Iteration 1 --
int(0)
-- Iteration 2 --
int(83)
-- Iteration 3 --
int(123000000)
-- Iteration 4 --
int(-83)
-- Iteration 5 --
int(-12300000)
-- Iteration 6 --
int(16777215)
-- Iteration 7 --
int(123456789)
-- Iteration 8 --
int(1)
-- Iteration 9 --
int(-1)
-- Iteration 10 --
float(-0)
-- Iteration 11 --
float(0)
-- Iteration 12 --
float(1.234)
-- Iteration 13 --
float(-1.234)
-- Iteration 14 --
float(-2)
-- Iteration 15 --
float(2)
-- Iteration 16 --
float(-400010)
-- Iteration 17 --
float(400010)
-- Iteration 18 --
float(6.99999989)
-- Iteration 19 --
float(-0.5)
-- Iteration 20 --
float(0.567)
-- Iteration 21 --
float(-0.00067)
-- Iteration 22 --
float(-670)
-- Iteration 23 --
float(1.0E-5)
-- Iteration 24 --
float(-100000)
-- Iteration 25 --
float(100000)
-- Iteration 26 --
float(1.0E-5)
-- Iteration 27 --
string(0) "" interned
-- Iteration 28 --
string(0) "" interned
-- Iteration 29 --
string(1) " " interned
-- Iteration 30 --
string(1) " " interned
-- Iteration 31 --
string(1) "0" interned
-- Iteration 32 --
string(1) "%0" interned
-- Iteration 33 --
string(2) "\0" interned
-- Iteration 34 --
string(1) " " interned
-- Iteration 35 --
string(2) "\t" interned
-- Iteration 36 --
string(3) "PHP" interned
-- Iteration 37 --
string(3) "PHP" interned
-- Iteration 38 --
string(34) "1234
5678
9100
abcda%000cdeh%0stuv" interned
-- Iteration 39 --
bool(true)
-- Iteration 40 --
bool(false)
-- Iteration 41 --
bool(true)
-- Iteration 42 --
bool(false)
-- Iteration 43 --
array(0) interned {
}
-- Iteration 44 --
array(1) refcount(%d){
[0]=>
NULL
}
-- Iteration 45 --
array(1) refcount(%d){
[0]=>
bool(true)
}
-- Iteration 46 --
array(1) refcount(%d){
[0]=>
string(0) "" interned
}
-- Iteration 47 --
array(1) refcount(%d){
[0]=>
string(0) "" interned
}
-- Iteration 48 --
array(2) refcount(%d){
[0]=>
array(2) refcount(%d){
[0]=>
int(1)
[1]=>
int(2)
}
[1]=>
array(2) refcount(%d){
[0]=>
string(1) "a" interned
[1]=>
string(1) "b" interned
}
}
-- Iteration 49 --
array(2) refcount(%d){
["test"]=>
string(8) "is_array" refcount(%d)
[1]=>
string(3) "One" refcount(%d)
}
-- Iteration 50 --
array(1) refcount(%d){
[0]=>
int(0)
}
-- Iteration 51 --
array(1) refcount(%d){
[0]=>
int(-1)
}
-- Iteration 52 --
array(2) refcount(%d){
[0]=>
float(10.5)
[1]=>
float(5.6)
}
-- Iteration 53 --
array(2) refcount(%d){
[0]=>
string(6) "string" refcount(%d)
[1]=>
string(4) "test" refcount(%d)
}
-- Iteration 54 --
array(2) refcount(%d){
[0]=>
string(6) "string" refcount(%d)
[1]=>
string(4) "test" refcount(%d)
}
-- Iteration 55 --
resource(%d) of type (stream) refcount(%d)
Done
Function Calls
None |
Stats
MD5 | f52f80f8a8e262a18e06bcecdc7ef140 |
Eval Count | 0 |
Decode Time | 78 ms |