Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Tukar tatasusunan php kepada tatasusunan js

Tukar tatasusunan php kepada tatasusunan js

WBOY
WBOYasal
2023-05-23 13:43:37631semak imbas

Dalam pembangunan web, PHP dan JavaScript ialah dua bahasa pengaturcaraan yang paling biasa digunakan. Selain itu, PHP dan JavaScript mempunyai jenis tatasusunan sendiri dan tidak boleh digunakan antara satu sama lain. Oleh itu, tatasusunan PHP perlu ditukar kepada tatasusunan JavaScript di bahagian hadapan.

Yang berikut akan memperkenalkan beberapa kaedah untuk menukar tatasusunan PHP kepada tatasusunan JavaScript.

Kaedah 1: Penukaran manual

Penukaran manual ialah kaedah paling asas dan paling mudah dikendalikan. Tetapkan data dalam tatasusunan PHP kepada tatasusunan JavaScript satu demi satu, seperti berikut:

<?php
$php_array = array(1,2,3);
?>
<script type="text/javascript">
var js_array = new Array();

<?php
foreach($php_array as $value) {
    echo "js_array.push('$value');";
}
?>

console.log(js_array);
</script>

Dalam kod di atas, tatasusunan PHP pertama kali ditakrifkan, dan kemudian data dalam tatasusunan PHP dipindahkan satu demi satu melalui gelung foreach dalam blok kod JavaScript. Tetapkan nilai pada tatasusunan JavaScript dan keluarkannya ke konsol.

Walaupun kaedah ini ringkas dan mudah difahami, kaedah ini kurang cekap apabila jumlah data dalam tatasusunan PHP adalah besar.

Kaedah 2: Gunakan fungsi json_encode()

Fungsi json_encode() boleh menukar tatasusunan PHP kepada data format JSON dan JavaScript boleh menukar data JSON kepada tatasusunan dengan mudah. Penggunaan terperinci adalah seperti berikut:

<?php
$php_array = array(1,2,3);
$json_string = json_encode($php_array);
?>
<script type="text/javascript">
var js_array = JSON.parse('<?php echo $json_string; ?>');

console.log(js_array);
</script>

Dalam kod di atas, mula-mula gunakan fungsi json_encode() untuk menukar tatasusunan PHP kepada data format JSON, dan kemudian gunakan fungsi JSON.parse() dalam kod JavaScript blok untuk menukar data JSON kepada tatasusunan JavaScript dan output kepada konsol.

Kaedah ini mempunyai kod yang kurang berlebihan dan lebih cekap kaedah yang lebih sesuai untuk digunakan.

Kaedah 3: Gunakan permintaan asynchronous Ajax

Apabila anda perlu menghantar tatasusunan PHP ke halaman lain, anda boleh menggunakan permintaan asynchronous Ajax. Tukar tatasusunan kepada format JSON dalam fail PHP, dan kemudian hantar data JSON ke halaman JavaScript melalui permintaan tak segerak Ajax. Penggunaan terperinci adalah seperti berikut:

<?php
$php_array = array(1,2,3);
$json_string = json_encode($php_array);
?>
<script type="text/javascript">
$(function() {
    $.ajax({
        type: "POST",
        url: "your_url.php",
        data: {json: '<?php echo $json_string; ?>'},
        success: function(response) {
            var js_array = JSON.parse(response);
            console.log(js_array);
        }
    });
});
</script>

Dalam kod di atas, permintaan tak segerak dihantar melalui fungsi ajax() jQuery untuk menghantar data JSON ke fail PHP yang ditentukan. Parsing data JSON dalam fail PHP dan keluarkan hasilnya melalui gema.

Akhir sekali, terima data JSON yang dikembalikan oleh fail PHP melalui kod JavaScript, tukarkannya menjadi tatasusunan JavaScript dan keluarkannya ke konsol.

Ringkasan

Di atas ialah tiga kaedah untuk menukar tatasusunan PHP kepada tatasusunan JavaScript. Kaedah 1 adalah kaedah yang paling asas, tetapi ia lebih memakan masa. Kaedah 2 menggunakan fungsi json_encode(), yang sangat cekap dan kurang redundansi kod. Kaedah 3 sesuai untuk menghantar tatasusunan PHP ke halaman lain. Mengikut keperluan yang berbeza, kaedah yang berbeza boleh dipilih untuk mencapainya.

Atas ialah kandungan terperinci Tukar tatasusunan php kepada tatasusunan js. 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