Tatasusunan PHP boleh ditukar kepada rentetan JSON melalui fungsi json_encode() (contohnya: $json = json_encode($array);), dan sebaliknya, fungsi json_decode() boleh digunakan untuk menukar daripada JSON kepada tatasusunan ($array = json_decode($json); Petua lain termasuk mengelakkan penukaran mendalam, menentukan pilihan tersuai dan menggunakan perpustakaan pihak ketiga.
PHP Array ke JSON - Petua Pantas
Pengenalan
Dalam PHP, tatasusunan ialah struktur data yang digunakan secara meluas, dan JSON (JavaScript Object Notation) ialah format data yang ringan yang biasa digunakan untuk memindahkan data. aplikasi web. Adalah penting untuk mengetahui cara menukar tatasusunan PHP kepada JSON dengan cepat.
Fungsi JSON_encode()
Cara paling mudah ialah menggunakan fungsi json_encode()
, yang mengambil tatasusunan PHP dan menukarkannya kepada rentetan JSON: json_encode()
函数,它接受一个 PHP 数组并将其转换为 JSON 字符串:
$array = ['name' => 'John Doe', 'age' => 30]; $json = json_encode($array); echo $json; // 输出:{"name":"John Doe","age":30}
json_decode() 函数
为了执行相反的操作(从 JSON 字符串转换为 PHP 数组),可以使用 json_decode()
函数:
$json = '{"name":"John Doe","age":30}'; $array = json_decode($json, true); var_dump($array); // 输出:array(2) { ["name"]=> string(7) "John Doe" ["age"]=> int(30) }
传递 true
作为第二个参数可将 JSON 对象转换为关联数组,而不是对象。
其他技巧
JSON_UNESCAPED_SLASHES
和 JSON_UNESCAPED_UNICODE
标志防止对反斜杠和 Unicode 字符进行转义。json_encode()
函数允许您指定其他选项,例如格式化输出、忽略空值等。symfony/json-component
。实战案例
考虑一个用户数据 API,该 API 需要将用户数据从数据库转换为 JSON 格式,以通过 AJAX 发送到前端。
// 从数据库获取用户数据 $users = $db->select('users', '*'); // 创建用户数组 $user_array = []; foreach ($users as $user) { $user_array[] = [ 'id' => $user['id'], 'name' => $user['name'], 'email' => $user['email'] ]; } // 转换数组为 JSON $json = json_encode($user_array); // 返回 JSON 响应 header('Content-Type: application/json'); echo $json;
该脚本从数据库中检索用户数据,并使用 json_encode()
rrreee
json_decode()
: 🎜rrreee🎜Lepaskan true
sebagai parameter kedua Objek JSON boleh ditukar kepada tatasusunan bersekutu dan bukannya objek. 🎜🎜🎜Petua lain🎜🎜JSON_UNESCAPED_SLASHES
dan JSON_UNESCAPED_UNICODE
Benderakan garis miring ke belakang dan aksara Unicode daripada dilepaskan. json_encode()
Fungsi ini membolehkan anda menentukan pilihan lain, seperti memformat output, mengabaikan nilai nol, dsb. symfony/json-component
. json_encode()
. Respons JSON kemudiannya dikembalikan ke bahagian hadapan. 🎜Atas ialah kandungan terperinci Petua pantas untuk menukar tatasusunan PHP kepada JSON. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!