Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Tukar rentetan json kepada array php

Tukar rentetan json kepada array php

王林
王林asal
2023-05-06 13:59:091541semak imbas

Dalam PHP, anda boleh menggunakan fungsi json_decode() untuk menukar rentetan JSON kepada tatasusunan.

Sintaks fungsi json_decode() adalah seperti berikut:

mixed json_decode(string $json_string, bool $assoc = false, int $depth = 512, int $options = 0)

Antaranya, parameter pertama ialah rentetan JSON yang akan ditukar, dan parameter kedua ialah parameter jenis Boolean pilihan, menentukan sama ada Tukar objek JSON kepada tatasusunan bersekutu dan bukannya tatasusunan lalai objek. Jika ia ditetapkan kepada benar, objek JSON akan ditukar kepada tatasusunan bersekutu, jika tidak, struktur objek JSON akan dikekalkan. Parameter ketiga menentukan kedalaman rekursi maksimum rentetan JSON dan nilai lalai ialah 512. Parameter terakhir menentukan beberapa parameter pilihan, seperti menentukan kaedah pengekodan rentetan JSON, dsb.

Berikut ialah contoh yang menunjukkan cara menukar rentetan JSON kepada tatasusunan:

<?php
  // 定义一个JSON字符串
  $json_string = '{"name": "Tom", "age": 30, "email": "tom@example.com"}';

  // 将JSON字符串转换为关联数组
  $assoc_array = json_decode($json_string, true);

  // 输出转换后的数组
  print_r($assoc_array);
?>

Hasil keluaran:

Array
(
    [name] => Tom
    [age] => 30
    [email] => tom@example.com
)

Dalam contoh di atas, kami menukar rentetan JSON ialah tatasusunan bersekutu, dan menggunakan fungsi print_r() untuk mengeluarkan keputusan ke skrin.

Perlu diambil perhatian bahawa jika rentetan JSON tidak sah atau tidak diformatkan dengan betul, fungsi json_decode() akan mengembalikan null. Jika anda perlu mendapatkan maklumat ralat yang lebih terperinci, anda boleh menggunakan fungsi json_last_error() untuk mendapatkan kod ralat operasi penyahkodan JSON yang terakhir.

<?php
  // 定义一个无效的JSON字符串
  $json_string = '{name: "Tom", age: 30, email: "tom@example.com"}';

  // 将JSON字符串转换为数组
  $array = json_decode($json_string, true);

  // 判断是否解码成功
  if($array === null && json_last_error() !== JSON_ERROR_NONE){
    // 输出错误信息
    echo 'json_decode failed with error code: ' . json_last_error_msg();
  }else{
    // 输出解码结果
    print_r($array);
  }
?>

Hasil keluaran:

json_decode failed with error code: Syntax error

Di atas ialah penggunaan asas untuk menukar rentetan JSON kepada tatasusunan saya percaya anda telah menguasainya.

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

Kenyataan:
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
Artikel sebelumnya:php melebihi julat membentukArtikel seterusnya:php melebihi julat membentuk