terminal42/contao-namespace-class-loader

此包已被废弃,不再维护。未建议替代包。

Contao开源CMS的命名空间类加载器

安装量: 8,385

依赖项: 18

建议者: 0

安全: 0

星标: 5

关注者: 7

分支: 3

开放问题: 0

类型:contao-module

1.0.3 2018-04-18 07:13 UTC

This package is auto-updated.

Last update: 2022-04-28 07:50:25 UTC


README

此扩展实现了Contao 3的有效PSR-0类加载器。实现基于Composer\Autoload\ClassLoader

此扩展已过时,请参阅升级信息!

使用方法

将所有文件放置在您的Contao安装中的system/modules/_autoload目录。

使用方法与Contao类加载器类似,但如果你遵循PSR-0标准,则不需要包含每个类文件。使用以下示例在您的config/autoload.php中实现类加载器

<?php

/**
 * Register namespace
 */
NamespaceClassLoader::add('Isotope', 'system/modules/isotope/library');

升级到Contao 4

在Contao 4中,安装扩展的唯一方法是使用Composer。因此,你将不需要此扩展,而应使用Composer的类加载器。

为了与Contao 3扩展仓库和Contao 4兼容,你需要至少要求Contao 3.3,并按以下方式设置

  1. composer.json中定义您的命名空间或类

  2. 从您的composer.json中删除对terminal42/contao-namespace-class-loader的依赖。

  3. 在旧扩展仓库中保留依赖关系。

  4. _autoload在您的autoload.ini中设置为可选依赖项,如下所示

    requires[] = "*_autoload"
    
  5. 只有当类实际可用时,才在您的autoload.php中调用NamespaceClassLoader

    if (class_exists('NamespaceClassLoader')) {
        NamespaceClassLoader::add( ... );
    }
    

如果通过Composer安装扩展,类将由Composer自动加载器加载。当使用旧扩展仓库安装时,将添加_autoload扩展,并且类将像以前一样工作。

有关如何在Isotope eCommerce中实现此操作的详细信息,请参阅我们的提交