|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2005-03-14 04:46 UTC] php dot bug at hebbron dot com
[2005-05-03 10:52 UTC] dmitry@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Sat Oct 25 08:00:01 2025 UTC |
Description: ------------ Using the code below, the output from get_class_methods is different between versions 5.0.2 and 5.0.3. This missing data is breaking some of our code. Is this change intended - I can't see it mentioend in the docs. Reproduce code: --------------- abstract class space{ function __construct(){} abstract protected function unfold(); } abstract class shape extends space{ protected final function unfold(){} } abstract class quad extends shape{ function buggy(){ $c = get_class($this); $a = get_class_methods(get_class($this)); $b = get_class_methods($this); print($c."\n".'a:'); print_r($a); print('b:'); print_r($b); } } class square extends quad{} $a = new square(); $a->buggy(); Expected result: ---------------- square a:Array ( [0] => buggy [1] => unfold [2] => __construct ) b:Array ( [0] => buggy [1] => unfold [2] => __construct ) Actual result: -------------- square a:Array ( [0] => buggy [1] => __construct ) b:Array ( [0] => buggy [1] => __construct )