旁路为无法重新声明功能

时间:2014-06-24 07:16:09

标签: php

我在WordPress中调用来自不同位置的类似PHP脚本。 他们都有共同点,他们称之为另一个php文件(genlib.php),它的某些库有大量的php函数。

当我遇到"无法重新声明函数...在genlib.php"错误,我将每个函数包装成一个" if!function_exists"避免这种情况的条件。

这很难看,因为我必须多次这样做。

如何在我的脚本中包含genlib.php文件的级别上避免这种情况?

2 个答案:

答案 0 :(得分:4)

我相信在包含文件genlib.php的所有文件中使用include_oncerequire_once可以解决此问题。

更新:根据OP的评论,此解决方案似乎不适用于加载include_once genlib.php的库的多个不同脚本。在这种情况下,OP可能必须回归到使用包含整个genlib.php的保护语句。

if (!defined('GEN_LIB_PHP')) {
  define('GEN_LIB_PHP', true);
  // Rest of code for genlib.php
}

答案 1 :(得分:1)

使用include_once()作为文件。如果以前包含该文件,这可以防止系统再次运行代码。这同样适用于requrie_once()