2013-02-19 121 views
-1

在我的PHP中使用Querypath。 由于我的linux是Debian Lenny,它不再支持,我不知道如何将它更新到debian Squeeze。我不能更新它的PHP,因为它不适用于Lenny(我读过的)。查询路径,PHP 5.2

使用的QueryPath我得到这个错误:

Parse error: syntax error, unexpected T_FUNCTION, expecting ')' in /var/www/vhosts/company/httpdocs/2013/inc/qp.php on line 61

而且这条线是:

spl_autoload_register(function ($klass) { 
$parts = explode('\\', $klass); 
if ($parts[0] == 'QueryPath') { 
$path = __DIR__ . '/' . implode('/', $parts) . '.php'; 
    if (file_exists($path)) { 
    require $path; 
    } 
} 

你知道吗,我热可以转换为“PHP版本5.2.6-1 + lenny13 “?

+0

首先,在你的榜样,你缺少到底右括号=>}); – 2013-02-19 13:22:09

+0

是的,我只是复制粘贴以显示61行中的内容。这不是我的代码。它的Querypath 3.0:http://querypath.org/文件(qp.php)。我想改变这个文件使它在5.2中工作 – 2013-02-19 13:30:25

回答

0

PHP 5.2不支持匿名函数。

相反,尝试使用一个命名函数,用字符串表示:

function my_function($kclass) { 
    $parts = explode('\\', $klass); 
    if ($parts[0] == 'QueryPath') { 
     $path = __DIR__ . '/' . implode('/', $parts) . '.php'; 
     if (file_exists($path)) { 
      require $path; 
     } 
    } 
} 

spl_autoload_register('my_function');