Rumah pembangunan bahagian belakang tutorial php PHP中的&传值引用的有关问题,在foreach循环的结果能帮解释下输出的结果原理是什么

PHP中的&传值引用的有关问题,在foreach循环的结果能帮解释下输出的结果原理是什么

Jun 13, 2016 pm 12:29 PM
amp foreach one

PHP中的&传值引用的问题,在foreach循环的结果能帮解释下输出的结果原理是什么?

PHP中的&传值引用的问题,在foreach循环的结果能帮解释下输出的结果原理是什么? <br />代码如下: <br /><?php <br />$arr = array('one','two','three'); <br />foreach ($arr as &$value){ echo 'Value:'.$value.'<br />'; } <br />foreach ($arr as $value){ echo 'Value:'.$value.'<br />'; } <br />?><br />输出结果:<br /> Value:one<br /> Value:two <br /> Value:three <br /><br /> Value:one <br /> Value:two <br /> Value:two
Salin selepas log masuk
<br />第一次带&的foreach并没有改变数组的内容。。<br />而是最后一次循环$value引用了数组的最后一个项 (可以测试一下,在第一次循环结束后unset($value),第二次循环的结果就不会有变化),<br />在你第二个foreach也是使用的$value变量,这才造成了怪异的问题(可以换个变量,比如$val,输出的数组就不会有变化)。<br />第二个foreach是赋值给$value,但是这时的$value是引用的数组的最后一个值,<br />所以<br />第一次循环把one赋值给了最后一个值,<br />第二次把two赋值给最后一个,<br />第三次也就是最后一个已经在第二次循环被赋值为two,所以仍然是two。
Salin selepas log masuk

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

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah perbezaan antara menggunakan foreach dan iterator untuk memadam elemen semasa melintasi Java ArrayList? Apakah perbezaan antara menggunakan foreach dan iterator untuk memadam elemen semasa melintasi Java ArrayList? Apr 27, 2023 pm 03:40 PM

1. Perbezaan antara Iterator dan foreach ialah perbezaan polimorfik (lapisan bawah foreach ialah Iterator ialah jenis antara muka, dan ia tidak mengambil berat tentang jenis pengumpulan atau tatasusunan untuk dan untuk setiap perlu mengetahui jenisnya). koleksi pertama, dan juga jenis elemen dalam koleksi 1. Mengapa dikatakan bahawa lapisan bawah foreach adalah kod yang ditulis oleh Iterator: Kod decompiled: 2. Perbezaan antara keluarkan dalam foreach dan iterator Pertama, lihat di Manual Pembangunan Java Alibaba, tetapi tiada ralat akan dilaporkan dalam kes 1, dan ralat akan dilaporkan dalam kes 2 (java. util.ConcurrentModificationException) terlebih dahulu

Bagaimana untuk menentukan bilangan gelung foreach dalam php Bagaimana untuk menentukan bilangan gelung foreach dalam php Jul 10, 2023 pm 02:18 PM

Langkah-langkah untuk PHP untuk menentukan bilangan gelung foreach: 1. Buat tatasusunan "$fruits"; 2. Buat pemboleh ubah pembilang "$counter" dengan nilai awal 0 melalui tatasusunan, dan Tingkatkan nilai pembolehubah pembilang dalam badan gelung, dan kemudian keluarkan setiap elemen dan indeksnya 4. Keluarkan nilai pembolehubah pembilang di luar gelung "foreach" untuk mengesahkan elemen yang dicapai gelung;

PHP mengembalikan tatasusunan dengan nilai kunci dibalikkan PHP mengembalikan tatasusunan dengan nilai kunci dibalikkan Mar 21, 2024 pm 02:10 PM

Artikel ini akan menerangkan secara terperinci bagaimana PHP mengembalikan tatasusunan selepas membalikkan nilai utama Editor berpendapat ia agak praktikal, jadi saya berkongsi dengan anda sebagai rujukan saya harap anda boleh memperoleh sesuatu selepas membaca artikel ini. PHP key value flip Array key value flip ialah operasi pada tatasusunan yang menukar kunci dan nilai dalam tatasusunan untuk menjana tatasusunan baharu dengan kunci asal sebagai nilai dan nilai asal sebagai kunci. Kaedah pelaksanaan Dalam PHP, anda boleh melakukan pembalik nilai kunci tatasusunan melalui kaedah berikut: fungsi array_flip(): Fungsi array_flip() digunakan khas untuk operasi flip nilai kunci. Ia menerima tatasusunan sebagai hujah dan mengembalikan tatasusunan baharu dengan kunci dan nilai ditukar. $original_array=[

Bagaimana untuk membatalkan langganan Apple anda Bagaimana untuk membatalkan langganan Apple anda Oct 31, 2023 pm 11:13 PM

Anda boleh membatalkan langganan AppleOne (seperti AppleOne) dengan mudah, serta langganan AppStore pihak ketiga, pada iPhone, iPad atau Mac anda. Apple menawarkan pelbagai perkhidmatan yang boleh dilanggan oleh pemilik peranti Apple, termasuk AppleMusic, AppleTV+, AppleArcade, iCloud+, AppleNews+ dan AppleFitness+. Ia juga menawarkan perkhidmatan ini sebagai langganan berkumpulan yang dipanggil Apple One Apple pada Mac 2023 membuat kenaikan harga yang ketara untuk beberapa perkhidmatannya, termasuk Apple TV+, Apple Arcade dan

Trezor Cold Wallet: Ciri dan Panduan Penggunaan Model One dan Model T Trezor Cold Wallet: Ciri dan Panduan Penggunaan Model One dan Model T Jan 19, 2024 pm 04:12 PM

Selepas masalah berlaku dalam banyak bursa berpusat, semakin ramai pelabur mata wang mula memindahkan aset ke dompet sejuk untuk mengurangkan risiko yang ditimbulkan oleh pertukaran berpusat. Artikel ini akan memperkenalkan Trezor, penyedia dompet sejuk terawal di dunia Sejak dompet sejuk pertama dilancarkan pada 2014, ia telah dijual di banyak negara di seluruh dunia. Produk Trezor termasuk Model One yang dilancarkan pada 2014 dan versi lanjutan Model T yang dilancarkan pada 2018. Berikut akan terus memperkenalkan perbezaan antara kedua-dua produk ini dan dompet sejuk yang lain. Apakah dompet sejuk Trezor? Pada 2014, Trezor melancarkan dompet sejuk pertama ModelOne. Sebagai tambahan kepada BTC biasa, ETH, USDT dan mata wang lain, dompet itu juga menyokong lebih daripada 1,000 mata wang lain.

Apakah syiling AMP? Apakah syiling AMP? Feb 24, 2024 pm 09:16 PM

Apakah itu AMP Coin? Token AMP telah dicipta oleh pasukan Synereo pada tahun 2015 sebagai mata wang dagangan utama platform Synereo. Token AMP bertujuan untuk memberikan pengguna pengalaman ekonomi digital yang lebih baik melalui pelbagai fungsi dan kegunaan. Tujuan Token AMP Token AMP mempunyai pelbagai peranan dan fungsi dalam platform Synereo. Pertama, sebagai sebahagian daripada sistem ganjaran mata wang kripto platform, pengguna dapat memperoleh ganjaran AMP dengan berkongsi dan mempromosikan kandungan, mekanisme yang menggalakkan pengguna untuk mengambil bahagian secara lebih aktif dalam aktiviti platform. Token AMP juga boleh digunakan untuk mempromosikan dan mengedarkan kandungan pada platform Synereo. Pengguna boleh meningkatkan keterlihatan kandungan mereka pada platform dengan menggunakan token AMP untuk menarik lebih ramai penonton melihat dan berkongsi

PHP mengembalikan elemen semasa dalam tatasusunan PHP mengembalikan elemen semasa dalam tatasusunan Mar 21, 2024 pm 12:36 PM

Artikel ini akan menerangkan secara terperinci tentang elemen semasa dalam tatasusunan yang dikembalikan oleh PHP Editor berpendapat ia agak praktikal, jadi saya berkongsi dengan anda sebagai rujukan saya harap anda boleh memperoleh sesuatu selepas membaca artikel ini. Dapatkan elemen semasa dalam tatasusunan PHP PHP menyediakan pelbagai kaedah untuk mengakses dan memanipulasi tatasusunan, termasuk mendapatkan elemen semasa dalam tatasusunan. Berikut memperkenalkan beberapa teknik yang biasa digunakan: 1. current() function Fungsi current() mengembalikan elemen yang sedang ditunjuk oleh penunjuk dalaman tatasusunan. Penunjuk pada mulanya menunjuk kepada elemen pertama tatasusunan. Gunakan sintaks berikut: $currentElement=current($array);2.key() function key() fungsi mengembalikan elemen yang sedang ditunjuk oleh penunjuk dalaman tatasusunan

Apakah perbezaan antara foreach dan for loop Apakah perbezaan antara foreach dan for loop Jan 05, 2023 pm 04:26 PM

Perbezaan: 1. untuk gelung melalui setiap elemen data melalui indeks, manakala untukSetiap gelung melalui elemen data tatasusunan melalui program asas JS 2. kerana boleh menamatkan pelaksanaan gelung melalui kata kunci rehat, tetapi untukSetiap tidak boleh; . for boleh mengawal pelaksanaan gelung dengan mengawal nilai pembolehubah gelung, tetapi forEach tidak boleh 4. untuk boleh memanggil pembolehubah gelung di luar gelung, tetapi forEach tidak boleh memanggil pembolehubah gelung di luar gelung 5. Kecekapan pelaksanaan bagi; adalah lebih tinggi daripada untukSetiap.

See all articles