Bagaimana untuk menukar tatasusunan kepada format json dalam php

PHPz
Lepaskan: 2023-04-26 10:47:15
asal
893 orang telah melayarinya

Artikel ini akan memperkenalkan cara menggunakan PHP untuk menukar tatasusunan kepada format JSON. JSON (JavaScript Object Notation) ialah format pertukaran data yang ringan Disebabkan kelebihannya yang mudah dibaca, ditulis dan dihuraikan, ia telah menjadi format biasa untuk penghantaran data di bahagian hadapan dan belakang.

Cara paling mudah untuk menukar tatasusunan kepada JSON menggunakan PHP ialah menggunakan fungsi terbina dalam PHP json_encode(). Fungsi ini boleh menukar tatasusunan PHP kepada rentetan format JSON. Berikut ialah contoh:

$myArray = array(
    "name" => "John",
    "age" => 30,
    "city" => "New York"
);
$jsonString = json_encode($myArray);

echo $jsonString;
Salin selepas log masuk

Dalam kod di atas, kami mengisytiharkan tatasusunan PHP $myArray dan kemudian menggunakan fungsi json_encode() untuk menukarnya kepada rentetan format JSON. Akhir sekali, cetak rentetan JSON. Melaksanakan kod di atas, hasil output adalah seperti berikut:

{"name":"John","age":30,"city":"New York"}
Salin selepas log masuk

Seperti yang dapat dilihat daripada hasil output di atas, fungsi json_encode() telah berjaya menukar tatasusunan PHP kepada rentetan format JSON.

Seterusnya, kami akan memperkenalkan fungsi json_encode() secara terperinci. Format fungsi

json_encode() adalah seperti berikut:

json_encode($value, $options = 0, $depth = 512)
Salin selepas log masuk

Antaranya, parameter $value ialah pembolehubah PHP yang hendak ditukar (boleh menjadi tatasusunan, objek, integer, rentetan, dsb.), dan parameter $options ialah pilihan penukaran (anda boleh menentukan format output, sama ada menggunakan pengekodan Unicode, dsb.), dan parameter $depth ialah kedalaman penukaran (nyatakan tahap penukaran untuk mengelakkan gelung tak terhingga).

Berikut ialah beberapa pilihan yang biasa digunakan:

选项名称 选项值 描述
JSON_PRETTY_PRINT 128 格式化输出
JSON_UNESCAPED_UNICODE 256 不进行Unicode编码
JSON_UNESCAPED_SLASHES 64 不进行斜杠转义

Berikut ialah contoh penggunaan pilihan:

$myArray = array(
    "name" => "John",
    "age" => 30,
    "city" => "New York"
);
$jsonString = json_encode($myArray, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);

echo $jsonString;
Salin selepas log masuk

Melaksanakan kod di atas, output ialah seperti berikut:

{
    "name": "John",
    "age": 30,
    "city": "New York"
}
Salin selepas log masuk

Seperti yang dapat dilihat dari output di atas, kami menggunakan pilihan JSON_PRETTY_PRINT supaya rentetan format JSON diformat dan keluaran kami menggunakan pilihan JSON_UNESCAPED_UNICODE supaya dalam Rentetan format JSON Aksara Cina tidak dikodkan Unicode.

Satu lagi perkara yang perlu diberi perhatian ialah apabila memproses aksara Cina dalam PHP, anda perlu menggunakan fungsi mb_internal_encoding() untuk menetapkan pengekodan aksara lalai, jika tidak, aksara yang bercelaru mungkin muncul.

Berikut ialah contoh lengkap:

<?php
mb_internal_encoding("UTF-8");

$myArray = array(
    "name" => "张三",
    "age" => 30,
    "city" => "北京"
);
$jsonString = json_encode($myArray, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE);

echo $jsonString;
?>
Salin selepas log masuk

Melaksanakan kod di atas, hasil output adalah seperti berikut:

{
    "name": "张三",
    "age": 30,
    "city": "北京"
}
Salin selepas log masuk

Seperti yang dapat dilihat daripada di atas hasil output, kami Berjaya menukar tatasusunan PHP yang mengandungi aksara Cina kepada rentetan format JSON.

Ringkasan:

Artikel ini memperkenalkan cara menggunakan PHP untuk menukar tatasusunan kepada format JSON. Sangat mudah untuk menggunakan fungsi json_encode() untuk menukar tatasusunan PHP kepada rentetan format JSON, dan anda boleh menggunakan pilihan untuk menentukan format penukaran. Apabila memproses aksara Cina, anda perlu menggunakan fungsi mb_internal_encoding() untuk menetapkan pengekodan aksara lalai untuk mengelakkan aksara bercelaru.

Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan kepada format json dalam 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