我正在使用“google-api-php-client”库,它在本地系统上工作正常,但它在服务器上出现以下错误,因为它的版本是5.2!
syntax error, unexpected T_FUNCTION, expecting ')'
所以我在这里有两个问题,如果我们可以通过对代码进行一些更改来修复此错误,以使其与此函数一起使用?以下是autoload.php的代码
spl_autoload_register(
function ($className) {
$classPath = explode('_', $className);
if ($classPath[0] != 'Google') {
return;
}
// Drop 'Google', and maximum class file path depth in this project is 3.
$classPath = array_slice($classPath, 1, 2);
$filePath = dirname(__FILE__) . '/' . implode('/', $classPath) . '.php';
if (file_exists($filePath)) {
require_once($filePath);
}
}
);
但是我不知道如何更改以上内容来解决这个问题,还有哪些库可以在php 5.2上运行?好像我使用它,它可能会开始在其他一些功能上给出错误。谢谢!
答案 0 :(得分:1)
看来你的php版本不知道匿名函数或闭包。尝试使用命名的:
function autoloadGoogleApi($className) {
$classPath = explode('_', $className);
if ($classPath[0] != 'Google') {
return;
}
// Drop 'Google', and maximum class file path depth in this project is 3.
$classPath = array_slice($classPath, 1, 2);
$filePath = dirname(__FILE__) . '/' . implode('/', $classPath) . '.php';
if (file_exists($filePath)) {
require_once($filePath);
}
}
spl_autoload_register('autoloadGoogleApi');
不过,我还想指出,你指定的php版本是很旧,所以我建议考虑升级选项。< / p>
UPD: 3v4l test