php-src/Zend/tests/cast_to_double.phpt
Nikita Popov fb4554e431 Throw warning for failed object to int/float conversion
We previously couldn't increase the error level here because it
was coupled to comparison handling. This is no longer the case
in PHP 8.
2020-09-21 17:04:39 +02:00

58 lines
687 B
PHP

--TEST--
casting different variables to double
--INI--
precision=14
--FILE--
<?php
$r = fopen(__FILE__, "r");
class test {
function __toString() {
return "10";
}
}
$o = new test;
$vars = array(
"string",
"8754456",
"",
"\0",
9876545,
0.10,
array(),
array(1,2,3),
false,
true,
NULL,
$r,
$o
);
foreach ($vars as $var) {
$tmp = (double)$var;
var_dump($tmp);
}
echo "Done\n";
?>
--EXPECTF--
float(0)
float(8754456)
float(0)
float(0)
float(9876545)
float(0.1)
float(0)
float(1)
float(0)
float(1)
float(0)
float(%f)
Warning: Object of class test could not be converted to float in %s on line %d
float(1)
Done