2014-09-30 85 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