


Bagaimana untuk menukar nilai tatasusunan asal dalam php
Apr 19, 2023 am 10:04 AMTatasusunan PHP ialah struktur data yang sangat biasa yang sangat mudah dan fleksibel untuk digunakan. Dalam PHP, selalunya perlu mengubah suai tatasusunan asal, dan dalam beberapa kes nilai tatasusunan asal perlu diubah. Artikel ini akan memperkenalkan cara menukar nilai tatasusunan asal dalam PHP.
1. Tugasan rujukan tatasusunan
Dalam PHP, jika anda menggunakan pernyataan tugasan untuk menetapkan nilai kepada pembolehubah tatasusunan, maka pembolehubah baharu ialah salinan tatasusunan asal, iaitu, ubah suai pembolehubah baharu Nilai tidak akan mengubah nilai tatasusunan asal. Jika anda perlu menukar nilai tatasusunan asal, anda perlu menggunakan tugasan rujukan. Simbol penugasan rujukan "&" boleh diletakkan di hadapan pembolehubah, yang bermaksud bahawa apabila memberikan pembolehubah kepada pembolehubah lain, rujukan kepada pembolehubah asal digunakan. Oleh itu, mengubahsuai nilai satu pembolehubah secara serentak mengubahsuai nilai pembolehubah yang lain.
Sebagai contoh, kod berikut menunjukkan perbezaan antara tugasan rujukan dan tugasan tradisional:
// 传统的赋值语句 $array1 = array(1, 2, 3); $array2 = $array1; $array2[1] = 4; print_r($array1); // 输出 Array ( [0] => 1 [1] => 2 [2] => 3 ) print_r($array2); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 ) // 引用赋值语句 $array1 = array(1, 2, 3); $array2 = &$array1; $array2[1] = 4; print_r($array1); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 ) print_r($array2); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 )
Seperti yang anda boleh lihat, dalam kod menggunakan tugasan rujukan, mengubah suai nilai $array2 akan juga mengubah suai $ Nilai tatasusunan1. Ini kerana $array2 ialah rujukan kepada $array1, dan ia menunjuk kepada tatasusunan yang sama.
2. Ubah suai secara langsung nilai elemen tatasusunan
Selain menggunakan tugasan rujukan, anda juga boleh mengubah suai secara langsung nilai elemen tatasusunan untuk menukar nilai tatasusunan asal. Anda boleh menggunakan subskrip tatasusunan untuk mengakses dan mengubah suai nilai elemen tatasusunan. Sebagai contoh, kod berikut menunjukkan cara untuk mengubah suai secara langsung nilai elemen tatasusunan melalui subskrip tatasusunan:
// 直接修改数组元素的值 $array = array(1, 2, 3); $array[1] = 4; print_r($array); // 输出 Array ( [0] => 1 [1] => 4 [2] => 3 )
Seperti yang anda lihat, selepas mengubah suai nilai $array[1] kepada 4, nilai $array juga telah diubah. Ini kerana dalam PHP, tatasusunan ialah koleksi tersusun, dan setiap elemen mempunyai subskrip unik untuk mengenal pastinya. Oleh itu, mengakses dan mengubah suai nilai elemen tatasusunan melalui subskrip tatasusunan adalah operasi yang sangat biasa.
3. Gunakan fungsi tatasusunan untuk menukar nilai tatasusunan asal
Dalam PHP, anda juga boleh menggunakan pelbagai fungsi tatasusunan untuk menukar nilai tatasusunan asal. Fungsi ini termasuk menambah dan mengalih keluar elemen, menyusun dan menapis tatasusunan, dsb. Berikut ialah beberapa fungsi tatasusunan yang biasa digunakan:
- array_push: Tambahkan satu atau lebih elemen pada penghujung tatasusunan.
$array = array(1, 2, 3); array_push($array, 4, 5); print_r($array); // 输出 Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
- array_pop: Alih keluar elemen dari hujung tatasusunan.
$array = array(1, 2, 3); array_pop($array); print_r($array); // 输出 Array ( [0] => 1 [1] => 2 )
- array_shift: Alih keluar elemen dari permulaan tatasusunan.
$array = array(1, 2, 3); array_shift($array); print_r($array); // 输出 Array ( [0] => 2 [1] => 3 )
- array_unshift: Tambahkan satu atau lebih elemen pada permulaan tatasusunan.
$array = array(1, 2, 3); array_unshift($array, 0); print_r($array); // 输出 Array ( [0] => 0 [1] => 1 [2] => 2 [3] => 3 )
- array_splice: Mengalih keluar bilangan elemen tertentu daripada tatasusunan dan menggantikannya dengan elemen baharu.
$array = array(1, 2, 3, 4, 5); array_splice($array, 1, 2, array(6, 7)); print_r($array); // 输出 Array ( [0] => 1 [1] => 6 [2] => 7 [3] => 4 [4] => 5 )
- isih: Isih tatasusunan dalam tertib menaik.
$array = array(3, 1, 4, 1, 5, 9); sort($array); print_r($array); // 输出 Array ( [0] => 1 [1] => 1 [2] => 3 [3] => 4 [4] => 5 [5] => 9 )
7.rsort: Isih tatasusunan dalam tertib menurun.
$array = array(3, 1, 4, 1, 5, 9); rsort($array); print_r($array); // 输出 Array ( [0] => 9 [1] => 5 [2] => 4 [3] => 3 [4] => 1 [5] => 1 )
- array_filter: Tapis elemen dalam tatasusunan yang tidak memenuhi syarat.
$array = array(1, 2, 3, 4, 5); $array = array_filter($array, function($value) { return $value % 2 == 0; }); print_r($array); // 输出 Array ( [1] => 2 [3] => 4 )
Seperti yang anda lihat daripada contoh di atas, menggunakan fungsi tatasusunan ini boleh menukar nilai tatasusunan asal dengan mudah dan meningkatkan kebolehbacaan dan kebolehselenggaraan kod.
Kesimpulan
Terdapat banyak cara untuk menukar nilai tatasusunan asal dalam PHP Anda boleh menggunakan tugasan rujukan, mengubahsuai terus nilai elemen tatasusunan dan menggunakan fungsi tatasusunan. Pilihan kaedah ini bergantung pada keperluan dan kemudahan sebenar. Saya harap artikel ini dapat memberikan sedikit bantuan kepada pembangun PHP dan menjadikan mereka lebih mahir dalam menggunakan tatasusunan dan memproses data.
Atas ialah kandungan terperinci Bagaimana untuk menukar nilai tatasusunan asal dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Apakah amalan terbaik untuk deduplikasi tatasusunan php

Apakah piawaian pengekodan PHP terkini dan amalan terbaik?

Bolehkah PHP Array Deduplication memanfaatkan keunikan nama utama?

Bagaimana saya bekerja dengan sambungan php dan pecl?

Bagaimana untuk melaksanakan beratur mesej (RabbitMQ, Redis) dalam PHP?

Adakah Deduplication Array PHP perlu dipertimbangkan untuk kerugian prestasi?

Apakah teknik pengoptimuman untuk deduplikasi tatasusunan php

Bagaimana menggunakan refleksi untuk menganalisis dan memanipulasi kod PHP?
