Bạn gặp lỗi này khi cố gắng sử dụng cú pháp đẩy mảng ngắn trên một chuỗi.
Ví dụ, điều này
$foo = 'foo';
$foo[] = 'bar'; // ERROR!
Tôi mạo hiểm đoán rằng một hoặc nhiều $name
của bạn , $date
, $text
hoặc $date2
các biến đã được khởi tạo dưới dạng một chuỗi.
Chỉnh sửa: Xem xét lại câu hỏi của bạn, có vẻ như bạn không thực sự muốn sử dụng chúng dưới dạng mảng vì bạn đang coi chúng như các chuỗi ở phía dưới.
Nếu vậy, hãy thay đổi nhiệm vụ của bạn thành
$name = $row['name'];
$date = $row['date'];
$text = $row['text'];
$date2 = $row['date2'];
Có vẻ như có một số vấn đề với PHP 7 và mã sử dụng rỗng-index cú pháp đẩy mảng.
Để làm rõ hơn, những điều này hoạt động tốt trong PHP 7+
$previouslyUndeclaredVariableName[] = 'value'; // creates an array and adds one entry
$emptyArray = []; // creates an array
$emptyArray[] = 'value'; // pushes in an entry
Điều gì không hoạt động đang cố gắng sử dụng trống-chỉ mục đẩy vào bất kỳ biến nào được khai báo dưới dạng chuỗi, số, đối tượng, v.v., tức là
$declaredAsString = '';
$declaredAsString[] = 'value';
$declaredAsNumber = 1;
$declaredAsNumber[] = 'value';
$declaredAsObject = new stdclass();
$declaredAsObject[] = 'value';
Tất cả đều dẫn đến lỗi nghiêm trọng.