On 14.08.2008, at 00:09, Lukas Kahwe Smith wrote:


On 13.08.2008, at 22:18, Stanislav Malyshev wrote:

Simply include a script from two locations with different namespaces or one

with namespace and the otherone without.

I'm afraid you misunderstand how namespaces work. As I explained numerous times, namespaces are file-local, and this when including file, it does not matter a bit what was including context.

I think Marcus is talking about files that are included that do not specify a namespace explicitly. In this situation the context does matter.

We do not know if the developer in question is aware that the context would matter in this case. Actually like I said in a previous email it would be nice to at least not throw a warning if the file that is included specifies an explicit namespace (I assume that is possible?). Maybe adding a new "include" is a solution. This way developers can say explicitly what they want to do without having to suppress the warning. Then again quickly some smartass developer is going to teach people that these annoying warnings go away if you just use this new include everywhere. Then again, I am not sure if I even have my head wrapped around this entire namespace thing.


So one more thing. If people either explicitly require all their files up front or make use of a properly designed autoload scheme, they will side step this problem. So maybe the solution indeed is to have this warning with a link to guidelines on how to do this properly. With explicit "upfront" requires and autoload, there is no need to have includes inside classes, except for the scenario of a template engine. Not sure about that one ..

regards,
Lukas Kahwe Smith
[EMAIL PROTECTED]




--
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to