Kaedah pengubahsuaian: 1. Gunakan pernyataan "foreach ($array as &$value)" untuk melintasi tatasusunan dan tetapkan nilai utama tatasusunan semasa kepada pembolehubah "$value" dalam setiap gelung; 2. Dalam gelung Dalam kandungan, gunakan pernyataan "$value=new;" untuk menetapkan nilai di sebelah kanan kepada pembolehubah "$value" di sebelah kiri.
Persekitaran pengendalian tutorial ini: sistem windows7, versi PHP7.1, komputer DELL G3
foreach ialah direka khas untuk Penyata yang direka untuk merentasi tatasusunan ialah kaedah yang biasa digunakan semasa merentasi tatasusunan, dan memberikan kemudahan yang hebat dalam merentasi tatasusunan selepas PHP5, objek juga boleh dilalui (foreach hanya boleh digunakan pada tatasusunan dan objek).
Pernyataan foreach merentasi tatasusunan tanpa mengira subskrip tatasusunan, dan boleh digunakan untuk tatasusunan indeks terputus dan tatasusunan bersekutu dengan rentetan sebagai subskrip.
Setiap kali pernyataan foreach bergelung, penunjuk di dalam tatasusunan akan bergerak ke hadapan satu langkah, supaya elemen tatasusunan seterusnya akan diperolehi dalam gelung seterusnya sehingga penghujung tatasusunan dilalui, traversal berhenti dan gelung keluar.
Bagaimana untuk menggunakan pernyataan foreach untuk mengubah suai nilai utama dalam PHP?
<?php $array= array(1,2,3,4,5,); foreach ($array as &$value) { $value = $value*2; // 元素值乘以2 } unset($value); // 最后取消掉引用 var_dump($array) ?>
Hasil keluaran:
Nota: Tambah & sebelum $value supaya pernyataan foreach akan diberikan melalui rujukan Daripada menyalin nilai, mengendalikan tatasusunan dalam badan gelung akan menjejaskan tatasusunan itu sendiri.
Nota: Rujukan $value bagi elemen terakhir tatasusunan masih akan dikekalkan selepas gelung foreach. Kita perlu menggunakan unset() untuk memusnahkannya.
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menggunakan pernyataan foreach untuk mengubah suai nilai kunci dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!