Bug #67454 [NEW]: ReflectionParameter functions not working on core functions
| From: | mail at markbiesheuvel dot nl | Date: | Mon, 16 Jun 2014 15:07:25 +0000 |
| Subject: | Bug #67454 [NEW]: ReflectionParameter functions not working on core functions | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-186212@lists.php.net to get a copy of this message | ||
From: mail at markbiesheuvel dot nl
Operating system:
PHP version: Irrelevant
Package: Reflection related
Bug Type: Bug
Bug description:ReflectionParameter functions not working on core functions
Description:
------------
Certain functions on instances of ReflectionParameter will not return
the correct value for core functions.
So far I found out that isArray and isCallable will always return false
(as far as I tested) and isPassedByReference and isOptional will return
the correct value.
In the test script I used array_key_exists and array_walk and a user
definied function array_magic. The difference between the expected and
actual result are:
array_key_exists
search
isArray
array_walk
input
isArray
funcname
isCallable
Test script:
---------------
http://ideone.com/bQWV2U
Expected result:
----------------
array_key_exists
key
isPassedByReference: false
isOptional: false
isArray: false
isCallable: false
search
isPassedByReference: false
isOptional: false
isArray: true
isCallable: false
array_walk
input
isPassedByReference: true
isOptional: false
isArray: true
isCallable: false
funcname
isPassedByReference: false
isOptional: false
isArray: false
isCallable: true
userdata
isPassedByReference: false
isOptional: true
isArray: false
isCallable: false
array_magic
function
isPassedByReference: false
isOptional: false
isArray: false
isCallable: true
array
isPassedByReference: true
isOptional: false
isArray: true
isCallable: false
additional
isPassedByReference: false
isOptional: true
isArray: true
isCallable: false
Actual result:
--------------
array_key_exists
key
isPassedByReference: false
isOptional: false
isArray: false
isCallable: false
search
isPassedByReference: false
isOptional: false
isArray: false
isCallable: false
array_walk
input
isPassedByReference: true
isOptional: false
isArray: false
isCallable: false
funcname
isPassedByReference: false
isOptional: false
isArray: false
isCallable: false
userdata
isPassedByReference: false
isOptional: true
isArray: false
isCallable: false
array_magic
function
isPassedByReference: false
isOptional: false
isArray: false
isCallable: true
array
isPassedByReference: true
isOptional: false
isArray: true
isCallable: false
additional
isPassedByReference: false
isOptional: true
isArray: true
isCallable: false
--
Edit bug report at https://bugs.php.net/bug.php?id=67454&edit=1
--