Rumah >pembangunan bahagian belakang >tutorial php >Mengapa Saya Mendapat \'Cuba Mengakses Array Offset pada Nilai Jenis Bool\' dalam PHP 7.4?

Mengapa Saya Mendapat \'Cuba Mengakses Array Offset pada Nilai Jenis Bool\' dalam PHP 7.4?

Linda Hamilton
Linda Hamiltonasal
2024-11-15 08:39:02385semak imbas

Why Am I Getting

Ralat Akses Array dalam PHP 7.4: "Mencuba Mengakses Array Offset pada Nilai Jenis Bool"

Apabila menaik taraf kepada PHP 7.4, anda mungkin menghadapi ralat "Cuba mengakses tatasusunan mengimbangi pada nilai jenis bool." Ini boleh berlaku kerana mengakses kunci tatasusunan yang mengandungi nilai boolean.

Pertimbangkan kod contoh berikut:

public static function read($id)
{
    $Row = MySQL::query("SELECT `Data` FROM `cb_sessions` WHERE `SessionID` = '$id'", TRUE);
    // Check for null value before accessing Data key
    $session_data = $Row['Data'] ?? '';
    return $session_data;
}

Dalam kes ini, kekunci $Row['Data'] mungkin mengandungi nilai boolean, yang akan menyebabkan ralat dalam PHP 7.4. Untuk menyelesaikan masalah ini, anda boleh menggunakan operator penggabungan nol (??) untuk menetapkan nilai lalai secara bersyarat jika nilainya adalah nol. Sebagai alternatif, anda boleh menggunakan pengendali penugasan null coalesce (??=) untuk menetapkan nilai lalai dan menyemak ketiadaan.

Atas ialah kandungan terperinci Mengapa Saya Mendapat \'Cuba Mengakses Array Offset pada Nilai Jenis Bool\' dalam PHP 7.4?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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