Rumah > pangkalan data > tutorial mysql > Mengapa saya mendapat ralat 'Fatal error: [] operator not supported for strings' dalam PHP 7 dan bagaimana saya boleh membetulkannya?

Mengapa saya mendapat ralat 'Fatal error: [] operator not supported for strings' dalam PHP 7 dan bagaimana saya boleh membetulkannya?

Susan Sarandon
Lepaskan: 2024-12-07 18:36:14
asal
925 orang telah melayarinya

Why am I getting the

Memahami Ralat: "Ralat maut: [] operator tidak disokong untuk rentetan"

Apabila cuba mengubah suai data dalam pangkalan data, anda menemui ralat "[] operator tidak disokong untuk rentetan". Ralat ini menunjukkan percubaan untuk menggunakan sintaks tolak tatasusunan pendek pada rentetan.

Punca Punca:

Menyemak kod anda, nampaknya anda telah memulakan satu atau lebih daripada pembolehubah ($name, $date, $text, $date2) sebagai rentetan. Ini terbukti daripada penugasan nilai $row[''], iaitu nilai rentetan.

Penyelesaian:

Untuk menyelesaikan isu ini, anda perlu menukar tugasan kepada:

$name = $row['name'];
$date = $row['date'];
$text = $row['text'];
$date2 = $row['date2'];
Salin selepas log masuk

Ini akan memastikan pembolehubah ini dianggap sebagai rentetan, bukannya tatasusunan.

Memahami Keketatan PHP 7:

PHP 7 mempunyai kawalan yang lebih ketat untuk menggunakan sintaks tolak tatasusunan indeks kosong. Ia kini akan menimbulkan ralat jika anda cuba menggunakannya pada pembolehubah yang bukan tatasusunan.

Contoh sintaks tolak tatasusunan indeks kosong yang sah dalam PHP 7 :

$previouslyUndeclaredVariableName[] = 'value'; // creates an array and adds an entry

$emptyArray = []; // creates an array
$emptyArray[] = 'value'; // pushes in an entry
Salin selepas log masuk

Walau bagaimanapun, berikut akan mengakibatkan ralat maut:

$declaredAsString = '';
$declaredAsString[] = 'value';

$declaredAsNumber = 1;
$declaredAsNumber[] = 'value';

$declaredAsObject = new stdclass();
$declaredAsObject[] = 'value';
Salin selepas log masuk

Dengan mengikuti garis panduan ini, anda boleh mengelakkan ralat ini dan memastikan kefungsian yang betul bagi anda kod pengubahsuaian pangkalan data.

Atas ialah kandungan terperinci Mengapa saya mendapat ralat 'Fatal error: [] operator not supported for strings' dalam PHP 7 dan bagaimana saya boleh membetulkannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan