php – 使用Symfony 1.4的自动加载器加载命名空间类?

前端之家收集整理的这篇文章主要介绍了php – 使用Symfony 1.4的自动加载器加载命名空间类?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何在Symfony 1.4中为自动加载器类功能(如 Symfony 2.0)注册名称空间(使用PHP 5.3)?
您可以在Symfony 1.4框架中使用Symfony2中的Autoloader.

1.将Symfony2类加载器复制到Symfony 1.4沙箱项目的供应商目录:

SF_ROOT_DIR/lib/vendor/Symfony2/src/Symfony/Component/ClassLoader/UniversalClassLoader.PHP

SF_ROOT_DIR/lib/vendor/Symfony2/src/Symfony/Component/ClassLoader/ApcUniversalClassLoader.PHP

2.修改SF_ROOT_DIR / config / ProjectConfiguration.class.PHP文件,如下所示:

require_once dirname(__FILE__) . '/../lib/vendor/symfony/lib/autoload/sfCoreAutoload.class.PHP';
require_once dirname(__FILE__) . '/../lib/autoload/sfClassLoader.class.PHP';
sfCoreAutoload::register();

class ProjectConfiguration extends sfProjectConfiguration {

    public function setup() {
        $this->namespacesClassLoader();
        $this->enablePlugins('sfDoctrinePlugin');
    }

    public function namespacesClassLoader() {
       if (extension_loaded('apc')) {
           $loader = new ApcUniversalClassLoader('S2A');
       } else {
           $loader = new UniversalClassLoader();
       }
       $loader->registerNamespaces(array(
          'Pohon' => __DIR__ . '/../lib/vendor/Pohon/src'));
       $loader->register();
    }

}

3.注册所需的命名空间:

例如.我想加载类:

Pohon\Tools\String\Utils\Slugify.

文件名必须是:

SF_ROOT_DIR/lib/vendor/Pohon/src/Pohon/Tools/String/Utils/Slugify.PHP

注册的命名空间如下:

Pohon => SF_ROOT_DIR/lib/vendor/Pohon/src

原文链接:https://www.f2er.com/php/135682.html

猜你在找的PHP相关文章