RE: [PHP-DEV] Cannot register classes after MINIT

From: Date: Sun, 19 Sep 2010 19:00:29 +0000
Subject: RE: [PHP-DEV] Cannot register classes after MINIT
References: 1 2  Groups: php.internals 
Request: Send a blank email to internals+get-49768@lists.php.net to get a copy of this message
What differentiates user declared classes from "built in" classes? I am not sure whether 'extension' defined classes (PDO for example) are what you consider "built in", but to better understand, is there some special treatment PHP gives classes defined in a certain manner (like those defined at the MINIT stage)? If you could elaborate that would help me greatly. Furthermore I have decided with the kind help of the #php.pecl people (some of them are here I guess) to debug PHP (thank god for --enable-debug) and see what goes on, will let you know if I find anything. Thanks :D > From: johannes@schlueters.de > To: jb_jeff@hotmail.com > CC: internals@lists.php.net > Date: Sun, 19 Sep 2010 18:51:56 +0200 > Subject: Re: [PHP-DEV] Cannot register classes after MINIT > > On Sat, 2010-09-18 at 20:01 +0000, Jeff Brown wrote: > > I have recently tried registering a class (via zend_register_class) > > inside of a PHP_FUNCTION, though this may sound weird and an > > unecessary function I ask that you ignore this request.I have noticed > > that registering goes fine but every time I declare a class after the > > call to my function, e.g:create_class_function('class_name');class > > Test { } > > My PHP process crashes, not declaring the Test classes causes no > > crash, I also noticed that If I move my code to the MINIT part no > > crash occurs and all goes well as with other PHP extensions. > > I have no idea why it crashes, but in general there are a few > assumptions around "built in" classes, like not freeing them on request > shutdown etc. > > Adding them at run time really is no good idea ... > > johannes > > > > -- > PHP Internals - PHP Runtime Development Mailing List > To unsubscribe, visit: http://www.php.net/unsub.php >

« previous php.internals (#49768) next »