Ralat Maut: Operator Tatasusunan Tidak Disokong untuk Rentetan
Masalah:
Apabila cuba untuk kemas kini pangkalan data dengan maklumat yang diubah suai, anda menghadapi ralat "Ralat maut: [] operator tidak disokong untuk rentetan."
Analisis:
Ralat ini berlaku apabila anda cuba menggunakan sintaks tolak tatasusunan ([]) untuk memanipulasi pembolehubah yang telah diisytiharkan sebagai rentetan . Dalam kod yang disediakan, anda menggunakan sintaks ini pada pembolehubah berikut:
$name $date $text $date2
Penyelesaian 1:
Jika anda memang berniat untuk menggunakan pembolehubah ini sebagai tatasusunan , pastikan ia telah dimulakan dengan betul sedemikian. Gantikan tugasan dalam kod anda dengan:
$name[] = $row['name']; $date[] = $row['date']; $text[] = $row['text']; $date2[] = $row['date2'];
Penyelesaian 2:
Jika niat anda adalah untuk menganggap pembolehubah ini sebagai rentetan, tukar tugasan kepada:
$name = $row['name']; $date = $row['date']; $text = $row['text']; $date2 = $row['date2'];
Konteks Tambahan (PHP 7 ):
PHP 7 telah melaksanakan semakan yang lebih ketat untuk sintaks tolak tatasusunan. Sebelum ini, anda boleh menolak nilai ke dalam pembolehubah mana-mana jenis data. Namun, amalan ini kini tidak digalakkan. Hanya pembolehubah kosong atau tidak diisytiharkan sebelum ini boleh digunakan dengan sintaks tolak tatasusunan.
Atas ialah kandungan terperinci Mengapa Saya Mendapat 'Ralat maut: [] operator tidak disokong untuk rentetan' dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!