php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #39129 get_class_methods() guesses the existence of a constructor (4.4 only)
Submitted: 2006-10-11 18:25 UTC Modified: 2006-11-08 13:31 UTC
From: colder@php.net Assigned:
Status: Wont fix Package: Scripting Engine problem
PHP Version: 4.4.4 OS: Irrelevant
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2006-10-11 18:25 UTC] colder@php.net
Description:
------------
When instanciating a class without constructor, php will try to call the parent constructor.

This bug may may also be related to #39127.

get_class_methods() seems to guess that an imaginary constructor exists:





Reproduce code:
---------------
class a { function a() {} } 
class b extends a {} 
class c {}

$b = new b; 
$c = new c;

var_dump(get_class_methods($b), get_class_methods($c));

Expected result:
----------------
array(1) {
  [0]=>
  string(1) "a"
}
array(0) {
}


Actual result:
--------------
array(2) {
  [0]=>
  string(1) "a"
  [1]=>
  string(1) "b"
}
array(0) {
}


Patches

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2006-10-15 17:06 UTC] iliaa@php.net
This bug has been fixed in CVS.

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/.
 
Thank you for the report, and for helping us make PHP better.


 [2006-11-08 13:31 UTC] tony2001@php.net
The patch has been reverted, so the report should be "won't fix" for now.
 
PHP Copyright © 2001-2022 The PHP Group
All rights reserved.
Last updated: Wed Aug 17 10:05:45 2022 UTC