配列の書き方
はじめに
PHPで配列を書く時
php
$array = [
"foo" => "bar",
"bar" => "foo",
];
のような書き方が主流だと思う。しかし、PHP 5.4以前のバージョンでは上記の記述はできず、
php
$array = array(
"foo" => "bar",
"bar" => "foo",
);
と記述する必要がある。なお、PHP 5.4以降のバージョンでも後者の書き方は許可されている。
先日の出来事
CakePHP2を使って作ったサイトを本番環境に移行する作業をしていた。本番環境に移行後、下記のエラーが大量発生!
error
Parse error: syntax error, unexpected '[' in x.php on line x
あら…
本番環境はPHP5.3だから確かに$array = [];
表記はエラーになる…でも
によると、CakePHP2はPHP 5.3.0以上をサポートしているから、$array = [];
表記はしてないはず…
調査結果
開発者が追加したコードに$array = [];
表記が大量に混じっていた。そして開発環境のPHPバージョンが5.4であったため、開発中はエラーにならなかった。
なんと…
エラー箇所を全て修正する?
でも開発環境と本番環境でPHPのバージョンが違うなら、他にもエラーが出る可能性も…
結果
本番環境のPHPバージョンを5.4にすることで解決。
所感
開発環境の定義をしっかりと行う!
Author And Source
この問題について(配列の書き方), 我々は、より多くの情報をここで見つけました https://qiita.com/sozaiya/items/b824cedba36f04993269著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .