文字列で短い配列のプッシュ構文を使用しようとすると、このエラーが発生します。
たとえば、これ
$foo = 'foo';
$foo[] = 'bar'; // ERROR!
あなたの$name
の1つ以上が推測されるのは危険です 、$date
、$text
または$date2
変数は文字列として初期化されています。
編集: もう一度質問を見ると、さらに下の文字列として扱っているため、実際には配列として使用したくないようです。
その場合は、割り当てを
に変更します$name = $row['name'];
$date = $row['date'];
$text = $row['text'];
$date2 = $row['date2'];
PHP7とempty-indexを使用したコードにはいくつかの問題があるようです。 配列プッシュ構文。
明確にするために、これらは正常に機能します PHP7以降
$previouslyUndeclaredVariableName[] = 'value'; // creates an array and adds one entry
$emptyArray = []; // creates an array
$emptyArray[] = 'value'; // pushes in an entry
機能しない empty-indexを使用しようとしています 文字列、数値、オブジェクトなどとして宣言された変数をプッシュします。つまり、
$declaredAsString = '';
$declaredAsString[] = 'value';
$declaredAsNumber = 1;
$declaredAsNumber[] = 'value';
$declaredAsObject = new stdclass();
$declaredAsObject[] = 'value';
すべてが致命的なエラーになります。