2014-09-30 88 views
0

我得到一个错误,当我尝试设置一个数组使用

$var = []; // throws error 
$var = array(); // no error 

的错误是

Parse error: syntax error, unexpected '[' 

之前从来没有见过这个!我认为这是PHP版本中的一个怪癖?它也抛出了同样的错误,当我做这样的事情:

$var[] = $newvalue; 
+1

您正在使用哪个版本的PHP? – showdev 2014-09-30 22:52:03

+0

我从来没有用'$ var = [];'来初始化一个数组,但总是用'$ var = array();'但也许这只是我 – 2014-09-30 22:54:30

+0

真的吗?它总是使用[],但从来没有在我的答案,因为它会导致人们评论 - 哦语法错误。 – 2014-09-30 22:55:33

回答

4

$var = [];是合法的PHP 5.4的。

1

这不是一个“在版本怪癖”,但它确实需要一个最低版本:“短数组语法”([]array()的同义词)在PHP 5.4中引入,可以看出from the release notes of that version

您还可以使用在线工具http://3v4l.org查看哪些版本的PHP代码片段可以工作,该工具运行各种构建中的代码片段,从PHP 4到最终将是PHP 7的代码片段,甚至各种版本的HHVM。 Here is an example of running this code