Bug #62715 [Csd]: ReflectionParameter::isDefaultValueAvailable() wrong result
Edit report at https://bugs.php.net/bug.php?id=62715&edit=1
ID: 62715
Updated by: laruence@php.net
Reported by: benjamin dot morel at strictcoding dot co dot uk
Summary: ReflectionParameter::isDefaultValueAvailable() wrong
result
Status: Closed
Type: Bug
Package: Reflection related
Operating System: CentOS 6.3, Windows 7
PHP Version: 5.4.5
Assigned To: laruence
Block user comment: N
Private report: N
New Comment:
the getdefaultvalue fix is : 170ee90bf962d288bdcf6cf0c8c4a2a30c5c1ba2
Previous Comments:
------------------------------------------------------------------------
[2012-08-23 09:11:04] phpnet at bastian-frank dot de
It seems that 5.3.16 fixes the bug in isDefaultValueAvailable() but does NOT fix
getDefaultValue, so the situation in 5.3.16 is even worse than before.
This breaks Twig and Doctrine in current versions, so 5.3.16 is not useable for
Symfony 2 at the moment.
Is there a chance to get a new 5.3 release soon?
------------------------------------------------------------------------
[2012-08-02 22:53:09] benjamin dot morel at strictcoding dot co dot uk
I can now confirm this works as expected. Thanks for your time!
------------------------------------------------------------------------
[2012-08-02 14:26:09] laruence@php.net
Hi, fixed :)
------------------------------------------------------------------------
[2012-08-02 10:19:20] benjamin dot morel at strictcoding dot co dot uk
Thanks for the quick fix, isDefaultValueAvailable() works indeed, but
getDefaultValue() still throws an exception:
<?php
function test(PDO $a = null, $b = 0, array $c) {}
$r = new ReflectionFunction('test');
foreach ($r->getParameters() as $p) {
if ($p->isDefaultValueAvailable()) {
var_export($p->getDefaultValue());
}
}
Fatal error: Uncaught exception 'ReflectionException' with message 'Parameter is
not optional'
------------------------------------------------------------------------
[2012-08-01 12:24:24] laruence@php.net
This bug has been fixed in SVN.
Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.
For Windows:
http://windows.php.net/snapshots/
Thank you for the report, and for helping us make PHP better.
------------------------------------------------------------------------
The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
https://bugs.php.net/bug.php?id=62715
--
Edit this bug report at https://bugs.php.net/bug.php?id=62715&edit=1
Thread (9 messages)