Пример:
namespace Somenamespace; use Somenamespace\Someclass; use Somenamespace\otherclass; class Template{ public function display($templ){ load_template($templ); } } function load_template($file){ unset($file); require func_get_arg(0); } $template = new Template(); $template->display('file.php');
Теперь я хочу получить доступ к «Someclass» в файле file.php, не указывая его сначала в инструкции «use». например. someclass::dostuff();
(без пространства имен)
Является ли это возможным?
Просто: нет. См. Примечание к примеру http://www.php.net/manual/en/language.namespaces.importing.php#example-247
Импорт правил осуществляется на основе файлов, что означает, что включенные файлы НЕ наследуют правила импорта родительского файла.
Аналогичная проблема заключается в том, что она также не работает наоборот:
PHP: «использовать» в include-файлах?