U krijgt deze foutmelding wanneer u probeert de push-syntaxis voor korte arrays op een string te gebruiken.
Bijvoorbeeld deze
$foo = 'foo';
$foo[] = 'bar'; // ERROR!
Ik vermoed dat een of meer van uw $name
, $date
, $text
of $date2
variabelen is geïnitialiseerd als een tekenreeks.
Bewerken: Als we je vraag nog eens bekijken, lijkt het erop dat je ze niet echt als arrays wilt gebruiken, omdat je ze verderop als strings behandelt.
Zo ja, verander je opdrachten in
$name = $row['name'];
$date = $row['date'];
$text = $row['text'];
$date2 = $row['date2'];
Het lijkt erop dat er wat problemen zijn met PHP 7 en code met behulp van de empty-index array push-syntaxis.
Om het duidelijk te maken:deze werken prima in PHP 7+
$previouslyUndeclaredVariableName[] = 'value'; // creates an array and adds one entry
$emptyArray = []; // creates an array
$emptyArray[] = 'value'; // pushes in an entry
Wat werkt niet probeert empty-index te gebruiken druk op een variabele die is gedeclareerd als een tekenreeks, getal, object, enz., dwz
$declaredAsString = '';
$declaredAsString[] = 'value';
$declaredAsNumber = 1;
$declaredAsNumber[] = 'value';
$declaredAsObject = new stdclass();
$declaredAsObject[] = 'value';
Alle resulteren in een fatale fout.