Импорт класса без пространства имен в класс пространства имен - PullRequest
19 голосов
/ 20 декабря 2011

У меня есть некоторый класс, в него входит Smarty, но мой класс использует тест пространства имен, Smarty не использует пространства имен. Как включить Smarty, не записывая пространства имен в файлы smarty (у него много системных плагинов)

    import "smarty/Smarty.php"

    class testik
    {
        public function __construct ()
        {
            $smarty = new Smarty();
        }
    }


<?php

    class Smarty
    {
        //somcode
    }

Smarty имеет класс автозагрузчика и включает в себя свои плагины, плагины также не имеют пространств имен.

1 Ответ

39 голосов
/ 20 декабря 2011

Сообщите свой код пространства имен, что он находится в глобальном пространстве имен:

$smarty = new \Smarty();

Дополнительно Импорт & Документы работает следующим образом:

use Smarty;

Тогда вы можете использовать свой код таким, каким он был:

$smarty = new Smarty();

См. Также: Как использовать «корневое» пространство имен php? .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...