PHP5.4 以前のバージョンでは、次のように角括弧 []
を使用して配列要素を定義できます。
$array = [1, 2, 3, 4];
これは、いわゆる「短い配列構文」です。 」。
しかし、より単純化された短い配列構文が PHP5.5 で導入され、次のように中括弧 {}
を使用して配列要素を定義します。
$array = ['key1' => 'value1', 'key2' => 'value2'];
この短い配列構文状況によっては、より簡潔で読みやすくなりますが、問題が発生する可能性もあります。たとえば、文字列内の配列の要素を参照する必要がある場合、中括弧は PHP の変数置換にも使用されるため、中括弧を使用するとあいまいさが生じる可能性があります。
PHP5.4 以前のバージョンを使用していて、PHP5.5 以降にアップグレードする場合は、コード内の短い配列構文を変更する必要があります。一般的に使用される変更方法の一部を次に示します。
[]
を中括弧 {}
に置き換えます。 // Before: $array = [1, 2, 3, 4]; // After: $array = array(1, 2, 3, 4);
// Before: $array = ['key1' => 'value1', 'key2' => 'value2']; // After: $array = array('key1' => 'value1', 'key2' => 'value2');
array()
関数を使用して配列を明示的に指定する必要があります。 // Before (可能导致歧义): echo "The value of the array element is {$array[0]}"; // After: echo "The value of the array element is " . $array[0]; // 或者: echo "The value of the array element is {$array[0]}";
// Before (可能导致歧义): echo "The value of the array element is {$array['key']}"; // After: echo "The value of the array element is " . $array['key']; // 或者: echo "The value of the array element is {$array['key']}";
php-cs-fixer
や ## などの置換操作を自動化するツールの使用を検討してください。 #rephp。
以上がphp5.4の短い配列構文の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。