命名空间冲突。拥有不同目录的spl_autoload_register

时间:2017-10-15 11:18:04

标签: php

我为插件和主题创建自己的wordpress入门套件。

我想在我的项目中使用php命名空间(wp插件和主题)。

我设置了spl_autoload_register功能:

一切都很好。直到我根据我的入门套件创建了2个项目。在这种情况下,我收到错误Cannot redeclare class ...

所有插件和主题都在不同的目录中。在每个这样的文件夹中都有我的入门套件spl_autoload_register功能。

我的结构:

enter image description here

如何避免名称冲突? 如果其他人注册了一个函数spl_autoload_register会发生什么?

1 个答案:

答案 0 :(得分:1)

  

如何避免名称冲突?

使用namespaces

  

如果其他人注册了一个函数spl_autoload_register会发生什么?

当需要使用未声明的类时,解释器按照它们注册的顺序逐个调用使用spl_autoload_register注册的自动加载函数,直到该类可用。