Konversi array PHP ke string JSON dengan demo online

Programming

Oleh Vinci terakhir diubah pada 22 Oktober 2022.

JSON adalah format terbaik untuk mentransfer data melalui jaringan. Ini adalah template yang mudah terurai. Inilah sebabnya mengapa sebagian besar API menerima parameter dan mengembalikan respons dalam JSON.

Ada alat online untuk mengonversi array ke objek JSON. Tutorial ini mengajarkan cara membuat program untuk mengonversi tipe input array PHP ke format JSON.

Ini memiliki 4 contoh berbeda untuk mengonversi array PHP ke JSON. Tujuan mereka sangat kecil sehingga pemula dapat memahami konsep dengan mudah.

Contoh cepat

Contoh cepat ini hanya dikodekan dengan solusi tiga baris sederhana. Dibutuhkan array PHP satu dimensi dan mengubahnya menjadi JSON.

<?php
$array = array(100, 250, 375, 400);
$jsonString = json_encode($array);
echo $jsonString;
?>

Tampilkan demo

Berbagai contoh array ke JSON melakukan konversi array sederhana hingga kompleks. Ini juga menerapkan pra-modifikasi (seperti pemetaan array) sebelum konversi. Empat contohnya adalah:

  1. Array PHP sederhana hingga kompleks ke JSON.
  2. Hapus kunci array sebelum mengonversi ke JSON.
  3. Konversi array PHP dengan karakter yang disorot ke JSON
  4. Array PHP ke JSON dengan cetakan cantik

Jika Anda ingin kode yang menerjemahkan kebalikan dari objek JSON ke dalam array, artikel tertaut memiliki contoh.

Untuk mengonversi larik nilai yang dipisahkan koma menjadi objek JSON, lihat demo online ini.

php ke json array

1) Array PHP sederhana hingga kompleks ke JSON

Kode ini menangani 3 tipe data array dalam objek JSON. Di PHP sangat mudah untuk mengonversi array ke JSON.

Ini adalah kode satu baris menggunakan fungsi json_encode() PHP.

<?php
// PHP Array to JSON string conversion for
// simple, associative and multidimensional arrays
// all works the same way using json_encode
// just present different arrays for example purposes only

// simple PHP Array to JSON string
echo '<h1>PHP Array to JSON</h1>';
$array = array(
    100,
    250,
    375,
    400
);
$jsonString = json_encode($array);
echo $jsonString;

// Associative Array to JSON
echo '<h2>Associative PHP Array to JSON</h2>';
$array = array(
    'e1' => 1000,
    'e2' => 1500,
    'e3' => 2000,
    'e4' => 2350,
    'e5' => 3000
);
$jsonString = json_encode($array);
echo $jsonString;

// multidimensional PHP Array to JSON string
echo '<h2>Multidimensional PHP Array to JSON</h2>';
$multiArray = array(
    'a1' => array(
        'item_id' => 1,
        'name' => 'Lion',
        'type' => 'Wild',
        'location' => 'Zoo'
    ),
    'a2' => array(
        'item_id' => 2,
        'name' => 'Cat',
        'type' => 'Domestic',
        'location' => 'Home'
    )
);
echo json_encode($multiArray);
?>

Keluaran:

//PHP Array to JSON
[100,250,375,400]

//Associative PHP Array to JSON
{"e1":1000,"e2":1500,"e3":2000,"e4":2350,"e5":3000}

//Multidimensional PHP Array to JSON
{"a1":{"item_id":1,"name":"Lion","type":"Wild","location":"Zoo"},"a2":{"item_id":2,"name":"Cat","type":"Domestic","location":"Home"}}

2) Hapus kunci array sebelum mengonversi ke JSON

Kode ini menangani skenario konversi JSON lain yang akan berguna jika diperlukan. Misalnya, jika array ditautkan Subyek => tanda-tanda Dan pengguna hanya membutuhkan simbol untuk menggambarnya dalam grafik.

Menghapus kunci yang ditentukan pengguna dari array asosiatif dan menerapkan json_encode untuk mengonversinya. Ini adalah proses dua langkah.

  1. Ini menggunakan PHP array_values() untuk membaca array nilai.
  2. Kemudian, itu menerapkan json_encode ke array nilai.
<?php
// array_values() to remove assigned keys and convert to the original PHP Array key
echo '<h1>To remove assigned associative keys and PHP Array to JSON</h1>';
$array = array(
    'e1' => 1000,
    'e2' => 1500,
    'e3' => 2000,
    'e4' => 2350,
    'e5' => 3000
);

$jsonString = json_encode(array_values($array));
echo $jsonString;
?>

Keluaran:

[1000,1500,2000,2350,3000]

3) Konversi array PHP dengan karakter yang disorot ke JSON

Ini juga merupakan proses dua langkah untuk mengonversi array data yang berisi karakter beraksen.

Ini menerapkan pengkodean UTF8 ke nilai array sebelum mengonversinya menjadi objek JSON.

Untuk menyandikan semua elemen larik yang diberikan, petakan utf8_encode() sebagai panggilan menggunakan fungsi PHP array_map().

Kita telah melihat fungsi array PHP yang sering digunakan saat bekerja dengan array.

<?php
// Accented characters
// to preserve accented characters during PHP Array to JSON conversion
// you need to utf8 encode the values and then do json_encode
echo '<h1>For accented characters PHP Array to JSON</h1>';
$array = array(
    'w1' => 'résumé',
    'w2' => 'château',
    'w3' => 'façade',
    'w4' => 'déjà vu',
    'w5' => 'São Paulo'
);
$utfEncodedArray = array_map("utf8_encode", $array);
echo json_encode($utfEncodedArray);
?>

Keluaran:

{"w1":"r\u00c3\u00a9sum\u00c3\u00a9","w2":"ch\u00c3\u00a2teau","w3":"fa\u00c3\u00a7ade","w4":"d\u00c3\u00a9j\u00c3\u00a0 vu","w5":"S\u00c3\u00a3o Paulo"}

4) Array PHP ke JSON dengan cetakan cantik

Ini diterapkan untuk mencetak cantik properti JSON keluaran yang dikonversi ke format ruang murni.

Fungsi json_encode() PHP menerima parameter kedua untuk menyetel flag bitmask. Bendera ini digunakan untuk mengatur JSON_PRETTY_PRINT untuk menyelaraskan properti dari output JSON.

<?php
// to neatly align the output with spaces
// it may be useful when you plan to print the
// JSON output in a raw format
// helpful when debugging complex multidimensional PHP Arrays and JSON objects
// lot more constants are available like this, which might be handy in situations
echo '<h1>Convert PHP Array to JSON and Pretty Print</h1>';
$array = array(
    'e1' => 1000,
    'e2' => 1500,
    'e3' => 2000,
    'e4' => 2350,
    'e5' => 3000
);
echo json_encode($array, JSON_PRETTY_PRINT);
?>

Keluaran:

{ "e1": 1000, "e2": 1500, "e3": 2000, "e4": 2350, "e5": 3000 }

Unduh

Kembali ke atas


Source link

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *