Cara Membetulkan "Mencuba Mengakses Array Offset pada Nilai Jenis Null" dalam PHP 7.4
Dalam PHP 7.4, ralat berlaku apabila cuba mengakses kunci tatasusunan dengan nilai nol. Ini adalah perlepasan daripada versi PHP sebelumnya yang selalunya mengabaikan ralat sedemikian.
Punca Punca:
Ralat yang diserlahkan dalam soalan berasal daripada baris yang cuba mengira elemen dalam kunci tatasusunan ('char_data') pembolehubah $cOTLdata. Masalahnya terletak pada hakikat bahawa $cOTLdata adalah batal, mengakibatkan mesej ralat "Cuba mengakses tatasusunan mengimbangi nilai jenis null."
Penyelesaian:
Untuk menyelesaikan isu ini, anda boleh menggunakan salah satu daripada strategi berikut:
1. Use is_null():
Fungsi ini membolehkan anda menyemak secara eksplisit sama ada pembolehubah $cOTLdata adalah batal:
$len = is_null($cOTLdata) ? 0 : count($cOTLdata['char_data']);
Jika $cOTLdata adalah batal, ia mengembalikan 0; jika tidak, ia mengira elemen dalam $cOTLdata['char_data'].
2. Gunakan isset():
Sebagai alternatif, anda boleh menggunakan isset() untuk menyemak sama ada kedua-dua $cOTLdata dan $cOTLdata['char_data'] wujud serentak:
$len = !isset($cOTLdata['char_data']) ? 0 : count($cOTLdata['char_data']);
Baris ini memastikan bahawa $len ditetapkan kepada 0 jika sama ada $cOTLdata atau $cOTLdata['char_data'] tidak ditetapkan dan mengembalikan kiraan $cOTLdata['char_data'] jika kedua-dua pembolehubah ditetapkan.
Atas ialah kandungan terperinci Bagaimana untuk Menyelesaikan Ralat PHP 7.4 \'Mencuba Mengakses Array Offset pada Nilai Jenis Null\'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!