Rumah > pembangunan bahagian belakang > tutorial php > Cara Mengubah Suai Nilai Tatasusunan dalam Gelung Foreach PHP: Rujukan atau Kunci?

Cara Mengubah Suai Nilai Tatasusunan dalam Gelung Foreach PHP: Rujukan atau Kunci?

Linda Hamilton
Lepaskan: 2024-12-12 17:29:10
asal
136 orang telah melayarinya

How to Modify Array Values in a PHP Foreach Loop: Reference or Key?

Mengubah Suai Nilai Tatasusunan dalam Gelung Foreach

Dalam PHP, adalah mungkin untuk mengubah suai objek semasa yang dikendalikan dalam gelung foreach. Untuk berbuat demikian, terdapat dua pendekatan utama:

Menggunakan Pembolehubah Gelung dengan Kunci Tatasusunan:

<?php
foreach($questions as $key => $question){
    $questions[$key]['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}
?>
Salin selepas log masuk

Di sini, kami mengulangi tatasusunan $questions menggunakan pembolehubah gelung ($kunci) yang mewakili indeks tatasusunan. Dengan mengemas kini tatasusunan $questions secara eksplisit pada indeks ($key) yang sepadan, kami mengubah suai objek asal dengan berkesan.

Menggunakan Rujukan:

<?php
foreach($questions as &$question){
    $question['answers'] = $answers_model->get_answers_by_question_id($question['question_id']);
}
?>
Salin selepas log masuk

Dalam ini kes, kami menambah ampersand (&) sebelum pembolehubah gelung ($soalan), yang memberikan rujukan kepada objek. Dengan mengubah suai objek melalui rujukan, kami terus mengemas kini objek dalam tatasusunan $questions asal.

Pendekatan Manakah yang Disyorkan?

Semasa kedua-dua pendekatan berfungsi, menggunakan pembolehubah gelung dengan kunci tatasusunan biasanya lebih disukai. Ini kerana ia mengemas kini tatasusunan asal secara eksplisit, menjadikannya lebih mudah untuk menjejak pengubahsuaian untuk penyahpepijatan atau pemprosesan selanjutnya.

Atas ialah kandungan terperinci Cara Mengubah Suai Nilai Tatasusunan dalam Gelung Foreach PHP: Rujukan atau Kunci?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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 terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan