PHP配列は()[] =失敗:リテラル配列で[]が失敗するのはなぜですか?
<?php
// PHP Version => 5.6.13
$e=array()[]=1; // REJECTED "E_COMPILE_ERROR : type 64 -- Cannot use [] for reading "
$d=array();$e=$d[]=1; // Workaround - accepted
array() returns an arrayこととsomearray[]= assigns a value to an arrayというマニュアルにもかかわらず。
なぜですか?
*は「**既存**配列が明示的に値を設定することで変更することができます。」持っている*あなたの最初の例では、あなたの配列はまだ存在しません。 – Rizier123
です。 array()はそれを作成し、存在し、[]はその配列にアクセスしようとします。 – ChrisJJ