Namespaces

php.internals

Thorsten Suckow-Homberg

20 years ago
Hi, I am currently testing Jessie Hernandez Namespace Patch and I see some problems in the lack of an appropriate ini-Setting that points to a path where the user's class-repositories resist. I know this has been discussed, but I can't find the proper disussion-leaf, so if someone could point me into the right direction... Anyway, my thoughts on this are that with an optional ini-setting the userland definition of __autoload() could be automatically skipped. Any comments on this? Kind regards Thorsten Suckow-Homberg

Marcus Börger

20 years ago
Hello Thorsten, no new INI settings, if require use the include_path done. marcus Monday, September 19, 2005, 10:47:47 PM, you wrote:
> Hi,
> I am currently testing Jessie Hernandez Namespace Patch and I see some > problems in the lack of an appropriate ini-Setting that points to a path > where the user's class-repositories resist.
> I know this has been discussed, but I can't find the proper disussion-leaf, > so if someone could point me into the right direction...
> Anyway, my thoughts on this are that with an optional ini-setting the > userland definition of __autoload() could be automatically skipped. Any > comments on this?
> Kind regards
> Thorsten Suckow-Homberg
Best regards, Marcus

Thorsten Suckow-Homberg

20 years ago
Hi Marcus,
> no new INI settings, if require use the include_path done.
thanks for the quick reply. I'm not aware of the "political" decisions that have to be made / had been made to come to this conclusion, but AFAICS no additional "low level" plugin is being hindered in letting the users add configuration parameters to their ini-files (take eaccelerator as an example). So, if anyone could provide me with more information on this subject I'd be thankful :) Best regards Thorsten

Kevin Newman

20 years ago
Thorsten Suckow-Homberg wrote:
> So, if anyone could provide me with more information on this subject I'd be > thankful :) >
Me too. There seems to be quite of bit of demand (in the commerce sense of the word, I'm not demanding anything) for namespaces, but it's hard to find any solid info on why they were removed from PHP. I have some suspicions about why, as well as some ideas to share on implementation, but I'd like to know what the real issues are before I share them. Thanks, Kevin N.

Thorsten Suckow-Homberg

20 years ago
> Me too. There seems to be quite of bit of demand (in the commerce sense of > the word, I'm not demanding anything) for namespaces, but it's hard to > find any solid info on why they were removed from PHP.
AFAIR the implementation back then brought some huge performance problems with it, that's why the project was stopped and the community was asked for "proposing" ideas/implementations/patches etc. because the core developers had to focus on other things. I don't know in which relation Jessies patch out-performs the original implementation (it woul be interesting, though), but after all it's good to know that someone had the guts to write this kind of patch. I think it's up to the users to install & test the patch, provide the maintainer with bug reports, flowers and candy and hope that the patch gets somewhen officially part of a PHP(5) release.

Kevin Newman

20 years ago
Do namespaces require a class repository functionality at all? My understanding is that PHP runs straight through a script (and through included files - inline), except when calling files with __autoload (which is why it takes a performance hit?). Is that correct? Kevin N. Thorsten Suckow-Homberg wrote:

Thorsten Suckow-Homberg

20 years ago
> Do namespaces require a class repository functionality at all?
Well, in this case I see "class repository" more in the meaning of a repository of files that use the namespace functionality, each file holds one class, each one of them bound to the file-extension ".php"
> My understanding is that PHP runs straight through a script (and through > included files - inline), except when calling files with __autoload (which > is why it takes a performance hit?).
No exception here when calling __autoload(); you could see _autoload() as a functionality-wrapper for include/require, adding a little bit more logic to it. Best regards Thorsten Suckow-Homberg