我一直在使用PHP创建一个脚本,并且似乎在此刻碰到了一堵砖墙。我试图从一个类中的另一个文件中调用一个变量,所以我通过将文件包含在原始文件中然后实例化该类来调用该变量来解决该问题。但是整个事情都在递归函数中,我得到了致命错误:无法重新声明JVersion类。我已经粘贴下面的代码的一部分:在PHP中递归函数中实例化一个类
...
function functionname($path)
{
...
define('_JEXEC', true);
require_once ($path ."libraries/cms/version/version.php");
$test_class = new JVersion();
$jma_ver = $test_class->getShortVersion();
...
functionname($path);
...
}
这是代码的version.php内的部分看起来像
defined('_JEXEC') or die;
final class JVersion
{
public $RELEASE = '2.5';
public $DEV_LEVEL = '1';
public function getShortVersion()
{
return $this->RELEASE.'.'.$this->DEV_LEVEL;
}
有没有一种方法可以让我克服了“致命错误:无法重新声明class JVersion“错误?
你为什么这样做?这意味着什么?为什么你会一遍又一遍地定义一个常量?为什么? – cspray 2012-02-23 07:12:11