mirror of
https://github.com/php/php-src.git
synced 2026-04-22 23:48:14 +02:00
b10416a652
This deprecates passing null to non-nullable scale arguments of internal functions, with the eventual goal of making the behavior consistent with userland functions, where null is never accepted for non-nullable arguments. This change is expected to cause quite a lot of fallout. In most cases, calling code should be adjusted to avoid passing null. In some cases, PHP should be adjusted to make some function arguments nullable. I have already fixed a number of functions before landing this, but feel free to file a bug if you encounter a function that doesn't accept null, but probably should. (The rule of thumb for this to be applicable is that the function must have special behavior for 0 or "", which is distinct from the natural behavior of the parameter.) RFC: https://wiki.php.net/rfc/deprecate_null_to_scalar_internal_arg Closes GH-6475.
48 lines
813 B
PHP
48 lines
813 B
PHP
--TEST--
|
|
Test variations in usage of sqrt()
|
|
--INI--
|
|
precision = 14
|
|
--FILE--
|
|
<?php
|
|
/*
|
|
* Function is implemented in ext/standard/math.c
|
|
*/
|
|
|
|
|
|
//Test sqrt with a different input values
|
|
echo "*** Testing sqrt() : usage variations ***\n";
|
|
|
|
$values = array(23,
|
|
-23,
|
|
2.345e1,
|
|
-2.345e1,
|
|
0x17,
|
|
027,
|
|
"23",
|
|
"23.45",
|
|
"2.345e1",
|
|
"1000",
|
|
true,
|
|
false);
|
|
|
|
for ($i = 0; $i < count($values); $i++) {
|
|
$res = sqrt($values[$i]);
|
|
var_dump($res);
|
|
}
|
|
|
|
?>
|
|
--EXPECT--
|
|
*** Testing sqrt() : usage variations ***
|
|
float(4.795831523312719)
|
|
float(NAN)
|
|
float(4.8425200051213)
|
|
float(NAN)
|
|
float(4.795831523312719)
|
|
float(4.795831523312719)
|
|
float(4.795831523312719)
|
|
float(4.8425200051213)
|
|
float(4.8425200051213)
|
|
float(31.622776601683793)
|
|
float(1)
|
|
float(0)
|