|
php.net | support | documentation | report a bug | advanced search | search howto | statistics | random bug | login |
PatchesPull RequestsHistoryAllCommentsChangesGit/SVN commits
[2013-02-26 04:31 UTC] pollita@php.net
-Status: Open
+Status: Closed
-Assigned To:
+Assigned To: pollita
[2013-02-26 04:31 UTC] pollita@php.net
|
|||||||||||||||||||||||||||
Copyright © 2001-2025 The PHP GroupAll rights reserved. |
Last updated: Mon Nov 17 02:00:01 2025 UTC |
Description: ------------ When the third parameter of runkit_method_rename() is more than 14 symbols, crash of Apache is possible. It is a pity, that you give not enough time on runkit. The matter is that this extension is of great importance for PHP. Runkit allows to realize support of Aspect-Oriented Programming. I hope, you will be interested with this application of your work, and you can give it to little bit more time. Reproduce code: --------------- function getClassMethods($class) { $methods = array(); $class = new ReflectionClass($class); foreach ($class->getMethods() as $method) { array_push($methods, $method->getName()); } return $methods; } class Ancestor { public function __construct(){} } class Descendant extends Ancestor { public function someMethod(){} } class AnotherDescendant extends Ancestor { public function anotherMethod(){} } runkit_method_rename('Descendant', '__construct', 'abcdefghmnoprst'); print_r(getClassMethods('Descendant')); print_r(getClassMethods('AnotherDescendant')); Expected result: ---------------- Array ( [0] => someMethod [1] => abcdefghmnoprst ) Array ( [0] => anotherMethod [1] => abcdefghmnoprst ) Actual result: -------------- Array ( [0] => someMethod [1] => abcdefghmnoprst ) Array ( [0] => anotherMethod [1] => [abracadabra or crash of Apache] )