每当我的代码中有"["时,我的服务器都会返回一个错误;但它会在本地运行。
function get_date($get_date_zone = "UTC") {
date_default_timezone_set($get_date_zone);
return getdate()['mday'] . "/" . getdate()['mon'] . "/" . getdate()['year'];
}
print get_date();
?>
我得到:
Parse error: syntax error, unexpected '[' in /home/eliteshi/public_html/deve/test.php on line 5
我的代码可能有问题吗?或者我在看服务器端的东西?
只有在PHP 5.4中才添加了取消引用返回值的功能(这是执行doSomething(args)[key]
的奇特名称)。你的服务器可能没有。
不过,在这种情况下,使用一个临时变量会更明智:
$getdate = getdate();
return $getdate['mday']."/".$getdate['mon']."/".$getdate['year'];
可能,您的PHP版本是< 5.4
。不要使用这种getdate()[...]
语法,请尝试使用:
$date = getdate();
return $date['mday'] . "/" . $date['mon'] . "/" . $date['year'];
只有在php 5.4之后才可能。您可能正在使用旧版本的PHP。
你必须先把它放在一个单独的变量中:
$var = getdate();
$var['mday'];