Mengendalikan Data JSON Tidak Sah dengan json_decode() PHP
Apabila menggunakan json_decode() dalam PHP untuk menghuraikan data JSON, adalah penting untuk mempertimbangkan potensi kesilapan dan mengendalikannya dengan sewajarnya. Jika data JSON yang tidak sah dihantar, json_decode() boleh menyebabkan amaran atau mengembalikan hasil yang tidak dijangka.
Skrip Tersuai lwn. Kaedah Alternatif
Walaupun boleh menulis skrip tersuai untuk mengesahkan data JSON, terdapat cara yang lebih cekap dan teguh untuk mengendalikan perkara ini situasi.
Gelagat json_decode()
Memahami gelagat json_decode() adalah kunci:
Sekat Amaran
Untuk menyekat PHP amaran daripada json_decode(), pengendali @ boleh digunakan:
$data = @json_decode($_POST);
Walau bagaimanapun, menggunakan @ secara amnya menghalang penyahpepijatan dan harus digunakan dengan berhati-hati.
Penyelesaian Alternatif
Penyelesaian yang lebih komprehensif ialah dengan semak nilai pulangan json_decode() dan gunakan json_last_error() untuk menentukan sama ada ralat berlaku:
if ($data === null && json_last_error() !== JSON_ERROR_NONE) { echo "Invalid JSON data"; }
Sekiranya data JSON yang betul mengandungi null, penyelesaian ini akan mengenal pasti keputusan itu sebagai sah dengan betul. Dengan menyemak json_last_error(), anda boleh menangani ralat dengan lebih tepat.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengendalikan Data JSON Tidak Sah dengan Berkesan dengan `json_decode()` PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!