加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

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

发布时间:2020-12-13 18:24:05 所属栏目:PHP教程 来源:网络整理
导读:如何在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/C
如何在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.注册所需的命名空间:

例如.我想加载类:

PohonToolsStringUtilsSlugify.

文件名必须是:

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

和注册的命名空间如下:

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读