вторник, 3 сентября 2013 г.

Подключение отдельного модуля библиотеки Zend Framework 2 к проекту

Если надо использовать отдельный модуль ZF2 без развертывания MVC проекта от ZF, то понадобится код autoloader'a для автоматического подключения всех зависимостей для выбранного класса. Я брала autolaoder со stackoverflow:

function autoload($className)
{
    $className = ltrim($className, '\\');
    $fileName  = '';
    $namespace = '';
    if ($lastNsPos = strripos($className, '\\')) {
        $namespace = substr($className, 0, $lastNsPos);
        $className = substr($className, $lastNsPos + 1);
        $fileName  = str_replace('\\', DIRECTORY_SEPARATOR, $namespace) . DIRECTORY_SEPARATOR;
    }
    $fileName .= str_replace('_', DIRECTORY_SEPARATOR, $className) . '.php';

    require $fileName;
}

Регистрируем загрузчик:

spl_autoload_register('autoload');

Дальше остается подключить нужный класс, вызвав autoload по нэймспэйсу класса. К примеру:

autoload("Zend\Mail\Message");
И все необходимые классы для Message подхватятся сами.

Комментариев нет:

Отправить комментарий