Rumah > pembangunan bahagian belakang > masalah PHP > Artikel yang menerangkan cara menukar tatasusunan json kepada tatasusunan php

Artikel yang menerangkan cara menukar tatasusunan json kepada tatasusunan php

PHPz
Lepaskan: 2023-04-12 10:05:47
asal
771 orang telah melayarinya

Dalam proses pembangunan WEB, kami sering menggunakan pertukaran data format json, dan php ialah salah satu bahasa sebelah pelayan yang paling popular. Oleh itu, adalah perlu untuk menukar tatasusunan json kepada tatasusunan php semasa pembangunan. Artikel ini akan menerangkan cara menukar tatasusunan json kepada tatasusunan php.

1. Gunakan fungsi json_decode() untuk menukar tatasusunan json kepada tatasusunan php

fungsi json_decode() ialah fungsi terbina dalam PHP untuk menukar rentetan json kepada pembolehubah php. Menggunakan fungsi ini, anda boleh menukar tatasusunan json kepada tatasusunan php.

Kaedah pelaksanaan khusus adalah seperti berikut:

$json = '[{"name":"apple","color":"red"},{"name":"banana","color":"yellow"}]';
$array = json_decode($json, true);
print_r($array);
Salin selepas log masuk

Dalam kod di atas, kami menggunakan rentetan untuk mewakili tatasusunan json dan menetapkannya kepada pembolehubah $json. Kemudian, kami menggunakan fungsi json_decode() untuk menukar $json kepada tatasusunan php, dan kemudian gunakan fungsi print_r() untuk mengeluarkan tatasusunan.

Hasil keluaran adalah seperti berikut:

Array
(
    [0] => Array
        (
            [name] => apple
            [color] => red
        )

    [1] => Array
        (
            [name] => banana
            [color] => yellow
        )
)
Salin selepas log masuk

Seperti yang dapat dilihat daripada hasil keluaran, kami berjaya menukar tatasusunan json kepada tatasusunan php.

2. Mengendalikan kegagalan penukaran json_decode()

Dalam kod di atas, kami menggunakan fungsi json_decode() untuk menukar tatasusunan json kepada tatasusunan php. Walau bagaimanapun, jika rentetan json tidak diformat dengan betul, atau rentetan itu kosong, fungsi json_decode() akan mengembalikan null. Pada masa ini, kita perlu melakukan pemprosesan khas untuk mengelakkan daripada menyebabkan pengecualian program.

Kami boleh menggunakan kod berikut untuk mengendalikan situasi di mana penukaran json_decode() gagal:

$json = 'null';
$array = json_decode($json, true);
if (is_null($array)) {
    echo 'json格式错误或为空';
} else {
    print_r($array);
}
Salin selepas log masuk

Dalam kod di atas, kami menetapkan rentetan json kosong kepada pembolehubah $json. Kemudian, kami menggunakan fungsi json_decode() untuk menukar $json kepada tatasusunan php. Seterusnya, kami menggunakan fungsi is_null() untuk menilai hasil penukaran Jika hasil pulangan adalah batal, ini bermakna format json tidak betul atau kosong. Pada masa ini, kami menggunakan pernyataan gema untuk mengeluarkan mesej ralat jika tidak, kami menggunakan fungsi print_r() untuk mengeluarkan tatasusunan.

3. Gunakan fungsi foreach() untuk melintasi tatasusunan php

Selepas menukar tatasusunan json kepada tatasusunan php, kita selalunya perlu memproses tatasusunan php. Tatasusunan PHP sering dilalui menggunakan fungsi foreach().

Berikut ialah contoh kod yang menunjukkan cara menggunakan fungsi foreach() untuk melintasi tatasusunan php:

$json = '[{"name":"apple","color":"red"},{"name":"banana","color":"yellow"}]';
$array = json_decode($json, true);
foreach ($array as $value) {
    echo $value['name'].'的颜色是'.$value['color'].'<br>';
}
Salin selepas log masuk

Dalam kod di atas, kami menggunakan fungsi foreach() untuk melintasi tatasusunan php. Kami menggunakan setiap elemen tatasusunan sebagai nilai pembolehubah $value, dan kemudian menggunakan pernyataan gema untuk mengeluarkan nilai atribut "nama" dan "warna" setiap elemen.

Hasil keluaran adalah seperti berikut:

apple的颜色是red
banana的颜色是yellow
Salin selepas log masuk

4. Tukar tatasusunan php kepada rentetan json

Selain menukar tatasusunan json kepada tatasusunan php, kita selalunya perlu Tukar tatasusunan php kepada rentetan json. Nasib baik, PHP menyediakan fungsi json_encode(), yang boleh menukar tatasusunan php kepada rentetan json.

Berikut ialah contoh kod yang menunjukkan cara menukar tatasusunan php kepada rentetan json:

$array = array(
    array('name' => 'apple', 'color' => 'red'),
    array('name' => 'banana', 'color' => 'yellow')
);
$json = json_encode($array);
echo $json;
Salin selepas log masuk

Dalam kod di atas, kami menggunakan tatasusunan php untuk mewakili senarai buah-buahan . Kemudian, kami menggunakan fungsi json_encode() untuk menukar tatasusunan menjadi rentetan json dan menetapkannya kepada pembolehubah $json. Akhir sekali, kami menggunakan pernyataan gema untuk mengeluarkan $json.

Hasil keluaran adalah seperti berikut:

[{"name":"apple","color":"red"},{"name":"banana","color":"yellow"}]
Salin selepas log masuk

Seperti yang dapat dilihat daripada hasil keluaran, kami berjaya menukar tatasusunan php kepada rentetan json.

Ringkasan

Artikel ini memperkenalkan cara menukar tatasusunan json kepada tatasusunan php, dan mengendalikan situasi di mana penukaran json_decode() gagal menunjukkan cara menggunakan fungsi foreach() untuk melintasi a php array; akhirnya, Kami juga membincangkan cara menukar tatasusunan php kepada rentetan json.

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

sumber:php.cn
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan