Bug #71274 [Opn->Dup]: func_get_args() behaviour change in PHP 7
| From: | requinix@php.net | Date: | Mon, 04 Jan 2016 19:38:20 +0000 |
| Subject: | Bug #71274 [Opn->Dup]: func_get_args() behaviour change in PHP 7 | ||
| References: | 1 | Groups: | php.bugs |
| Request: | Send a blank email to php-bugs+get-198412@lists.php.net to get a copy of this message | ||
Edit report at https://bugs.php.net/bug.php?id=71274&edit=1
ID: 71274
Updated by: requinix@php.net
Reported by: patrickallaert@php.net
Summary: func_get_args() behaviour change in PHP 7
-Status: Open
+Status: Duplicate
Type: Bug
-Package: PHP Language Specification
+Package: Scripting Engine problem
PHP Version: 7.0.1
Block user comment: N
Private report: N
New Comment:
The changes are intentional and the docs have already been updated (modified example and
there's a note at the bottom). See also bug #71113.
https://github.com/php/php-src/blob/PHP-7.0.0/UPGRADING#L190
http://svn.php.net/viewvc/phpdoc/en/trunk/reference/funchand/functions/func-get-args.xml?r1=336598&r2=338280&pathrev=338280
Previous Comments:
------------------------------------------------------------------------
[2016-01-04 13:58:02] patrickallaert@php.net
Description:
------------
func_get_args() (and probably the related functions) are context sensitive in PHP 7.0 while it was
not the case in PHP 5.x.
If you change the content of one of your arguments and then call func_get_args(), the change you
made is reflected in the results you get, even if those were scalars.
See the results at: https://3v4l.org/Ti8YX
Might be a doc issue if we consider that this behaviour is "normal" but it doesn't
look documented and as per issue #30207, we previously emphasized that "func_get_args() returns
the arguments *passed* to the function".
Test script:
---------------
<?php
function issueWithArgs($x) {
$x = 33;
return func_get_args();
}
var_dump(issueWithArgs(42));
Expected result:
----------------
array(1) {
[0]=>
int(42)
}
Actual result:
--------------
array(1) {
[0]=>
int(33)
}
------------------------------------------------------------------------
--
Edit this bug report at https://bugs.php.net/bug.php?id=71274&edit=1