Rumah pembangunan bahagian belakang masalah PHP php json kepada fungsi tatasusunan

php json kepada fungsi tatasusunan

May 05, 2023 pm 09:25 PM

Dalam PHP, kita selalunya perlu menukar JSON kepada tatasusunan untuk diproses. Memandangkan format JSON agak ringkas dan mudah difahami, ia telah menjadi format biasa untuk menghantar data antara bahagian hadapan dan belakang Oleh itu, dalam PHP, terdapat beberapa fungsi yang boleh membantu kami menukar JSON kepada tatasusunan.

Artikel ini akan memperkenalkan beberapa JSON yang biasa digunakan kepada fungsi tatasusunan dalam PHP.

  1. json_decode()

fungsi json_decode() ialah fungsi asas dalam PHP untuk menukar rentetan JSON kepada tatasusunan atau objek PHP. Sintaksnya adalah seperti berikut:

mixed json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0 ]]] )
Salin selepas log masuk

di mana:

  • $json: rentetan JSON yang perlu ditukar.
  • $assoc: Jika parameter ini BENAR, tatasusunan dikembalikan; jika FALSE, objek Objek dikembalikan.
  • $depth: Menentukan kedalaman maksimum, digunakan untuk mengawal kedalaman panggilan rekursif. Nilai lalai ialah 512.
  • $options: Pilihan pengekodan JSON, anda boleh menentukan format yang ditukar.

Kod sampel:

$json_str = '{"name":"Tom","age":20,"hobby":["reading","writing"]}';
$arr = json_decode($json_str, TRUE);
print_r($arr);
Salin selepas log masuk

Hasil keluaran:

Array
(
    [name] => Tom
    [age] => 20
    [hobby] => Array
        (
            [0] => reading
            [1] => writing
        )
)
Salin selepas log masuk

Melalui fungsi json_decode(), kami berjaya menukar rentetan JSON kepada tatasusunan.

  1. json_decode() digunakan dalam kombinasi dengan JSON_THROW_ON_ERROR

Dalam PHP 7.3 dan ke atas, kita boleh menggunakan pilihan JSON_THROW_ON_ERROR untuk membiarkan fungsi json_decode() membuang apabila penukaran ralat berlaku tidak normal. Kod sampel adalah seperti berikut:

$json_str = '{"name":"Tom","age":20,"hobby:["reading","writing"]}';
try {
    $arr = json_decode($json_str, TRUE, 512, JSON_THROW_ON_ERROR);
    print_r($arr);
} catch (JsonException $e) {
    echo 'JSON错误:' . $e->getMessage();
}
Salin selepas log masuk

Hasil keluaran:

JSON错误:Syntax error
Salin selepas log masuk
Salin selepas log masuk

Dalam contoh ini, kerana format rentetan JSON tidak betul, fungsi json_decode() membuang pengecualian dan menggesa mesej ralat.

  1. json_last_error_msg()

Apabila menggunakan fungsi json_decode() untuk menukar rentetan JSON, kadangkala akan berlaku ralat penghuraian Pada masa ini kita boleh menggunakan json_last_error_msg(. ) berfungsi untuk mendapatkan maklumat ralat. Kod sampel adalah seperti berikut:

$json_str = '{"name":"Tom","age":20,"hobby":["reading","writing"';
$arr = json_decode($json_str, TRUE);
if (json_last_error() === JSON_ERROR_NONE) {
    print_r($arr);
} else {
    echo 'JSON错误:' . json_last_error_msg();
}
Salin selepas log masuk

Hasil output:

JSON错误:Syntax error
Salin selepas log masuk
Salin selepas log masuk

Dalam contoh ini, json_last_error_msg() mengembalikan mesej ralat kerana format rentetan yang salah.

  1. json_encode()

Dalam PHP, kami juga boleh menukar tatasusunan PHP kepada rentetan format JSON, yang memerlukan penggunaan fungsi json_encode(). Sintaksnya adalah seperti berikut:

string json_encode ( mixed $value [, int $options = 0 [, int $depth = 512 ]] )
Salin selepas log masuk

Di mana:

  • $value: Pembolehubah PHP yang perlu ditukar kepada format JSON.
  • $options: Pilihan. Pilihan pengekodan JSON.
  • $depth: pilihan. Nyatakan kedalaman maksimum. Nilai lalai ialah 512.

Kod sampel adalah seperti berikut:

$arr = array('name' => 'Tom', 'age' => 20, 'hobby' => array('reading', 'writing'));
$json_str = json_encode($arr, JSON_UNESCAPED_UNICODE);
echo $json_str;
Salin selepas log masuk

Hasil keluaran:

{"name":"Tom","age":20,"hobby":["reading","writing"]}
Salin selepas log masuk

Melalui fungsi json_encode(), kami berjaya menukar tatasusunan PHP menjadi rentetan JSON .

Ringkasan:

Dalam PHP, kita boleh menggunakan fungsi json_decode() untuk menukar rentetan JSON kepada tatasusunan atau objek, dan kita juga boleh menggunakan fungsi json_encode() untuk menukar PHP tatasusunan ke dalam format JSON. Dalam keadaan biasa, anda boleh menggunakan pilihan lalai Jika perlu, anda boleh menggunakan pilihan yang berkaitan untuk mengkonfigurasi. Apabila menghuraikan atau mengekod JSON, kami juga boleh menggunakan fungsi berkaitan untuk mendapatkan maklumat ralat untuk pemprosesan yang lebih baik.

Atas ialah kandungan terperinci php json kepada fungsi tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. OWASP Top 10 PHP: Huraikan dan mengurangkan kelemahan umum. Mar 26, 2025 pm 04:13 PM

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. PHP 8 JIT (Just-in-Time) Penyusunan: Bagaimana ia meningkatkan prestasi. Mar 25, 2025 am 10:37 AM

Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. PHP Secure File Muat naik: Mencegah kelemahan berkaitan fail. Mar 26, 2025 pm 04:18 PM

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

Penyulitan PHP: Penyulitan simetri vs asimetrik. Penyulitan PHP: Penyulitan simetri vs asimetrik. Mar 25, 2025 pm 03:12 PM

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Pengesahan PHP & amp; Kebenaran: Pelaksanaan selamat. Mar 25, 2025 pm 03:06 PM

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

PHP API Kadar Mengehadkan: Strategi Pelaksanaan. PHP API Kadar Mengehadkan: Strategi Pelaksanaan. Mar 26, 2025 pm 04:16 PM

Artikel ini membincangkan strategi untuk melaksanakan kadar API yang mengehadkan PHP, termasuk algoritma seperti baldi token dan baldi bocor, dan menggunakan perpustakaan seperti simfoni/kadar-limiter. Ia juga meliputi pemantauan, had kadar penyesuaian secara dinamik, dan tangan

Pengesahan Input PHP: Amalan Terbaik. Pengesahan Input PHP: Amalan Terbaik. Mar 26, 2025 pm 04:17 PM

Artikel membincangkan amalan terbaik untuk pengesahan input PHP untuk meningkatkan keselamatan, memberi tumpuan kepada teknik seperti menggunakan fungsi terbina dalam, pendekatan putih, dan pengesahan sisi pelayan.

PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. PHP CSRF Perlindungan: Bagaimana untuk mencegah serangan CSRF. Mar 25, 2025 pm 03:05 PM

Artikel ini membincangkan strategi untuk mencegah serangan CSRF di PHP, termasuk menggunakan token CSRF, kuki tapak yang sama, dan pengurusan sesi yang betul.

See all articles