Dalam pembangunan bahagian hadapan, selalunya terdapat situasi yang memerlukan untuk menukar tatasusunan dalam PHP kepada tatasusunan objek JavaScript. Sudah tentu, ini tidak sukar dan hanya memerlukan operasi mudah. Artikel ini akan memperkenalkan kaedah untuk menukar tatasusunan PHP secara terus kepada tatasusunan objek JavaScript menggunakan fungsi json_encode()
.
Sebelum menukar tatasusunan PHP kepada tatasusunan objek JavaScript, anda perlu menukar tatasusunan PHP kepada rentetan JSON terlebih dahulu. Gunakan fungsi terbina dalam PHP json_encode()
untuk menukar tatasusunan PHP kepada rentetan JSON. Berikut ialah contoh:
$data = array( array('name' => 'Amy', 'age' => 22), array('name' => 'Bob', 'age' => 25), array('name' => 'Cathy', 'age' => 28) ); $json_string = json_encode($data); echo $json_string;
Kod di atas menukar tatasusunan $data kepada rentetan JSON dan mengeluarkannya menggunakan echo
. Hasil keluarannya ialah:
[{"name":"Amy","age":22},{"name":"Bob","age":25},{"name":"Cathy","age":28}]
Selepas mendapat rentetan JSON, anda hanya perlu menggunakan fungsi JSON.parse()
untuk menukarnya menjadi objek JavaScript . Berikut ialah contoh:
var data = JSON.parse('<?php echo $json_string; ?>'); console.log(data);
Kod di atas mengeluarkan nilai $json_string
ke dalam fungsi JSON.parse()
, menukarnya menjadi objek JavaScript dan mengeluarkannya menggunakan console.log()
. Hasil output ialah:
[ { name: "Amy", age: 22 }, { name: "Bob", age: 25 }, { name: "Cathy", age: 28 } ]
Kaedah di atas hanya boleh menukar tatasusunan PHP kepada tatasusunan objek JavaScript. Jika anda perlu menggunakannya sebagai fungsi atau pembolehubah dalam JavaScript, anda boleh terus menggabungkan kod di atas menjadi rentetan. Contohnya:
var data = JSON.parse('<?php echo json_encode($data); ?>');
Selain kaedah yang diperkenalkan di atas, anda juga boleh menggunakan fungsi terbina dalam PHP array_map()
untuk menukar setiap elemen dalam tatasusunan ke dalam objek JavaScript. Berikut ialah contoh penggunaan fungsi array_map()
:
$data = array( array('name' => 'Amy', 'age' => 22), array('name' => 'Bob', 'age' => 25), array('name' => 'Cathy', 'age' => 28) ); $js_array = array_map(function($item) { return "{'name': '{$item['name']}', 'age': {$item['age']}}"; }, $data); echo "[" . implode(",", $js_array) . "]";
Kod di atas menggunakan fungsi array_map()
untuk menukar setiap elemen dalam tatasusunan $data
kepada objek JavaScript dan menyimpannya dalam $js_array
dalam tatasusunan. Akhirnya, tatasusunan $js_array
ditukar kepada tatasusunan JSON untuk output. Hasil keluarannya ialah:
[{'name': 'Amy', 'age': 22},{'name': 'Bob', 'age': 25},{'name': 'Cathy', 'age': 28}]
Artikel ini memperkenalkan dua kaedah untuk menukar tatasusunan PHP kepada tatasusunan objek JavaScript Salah satu daripadanya ialah menggunakan fungsi json_encode()
untuk menukar PHP secara langsung tatasusunan. ke dalam rentetan JSON, dan kemudian gunakan fungsi JSON.parse()
untuk menukarnya menjadi tatasusunan objek JavaScript. Yang lain ialah menggunakan fungsi array_map()
untuk menukar setiap elemen tatasusunan PHP kepada objek JavaScript. Kedua-dua kaedah boleh menukar tatasusunan PHP kepada tatasusunan objek JavaScript, dan pembaca boleh memilih kaedah mana mengikut keperluan mereka sendiri.
Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan php kepada tatasusunan objek js. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!