Fungsi PHP shuffle() merombak susunan elemen tatasusunan tetapi tidak mengekalkan indeks asal. Indeks boleh dikekalkan dengan: 1. Mencipta tatasusunan baharu dan mengocok elemen 2. Mengisih tatasusunan yang dikocok menggunakan fungsi ksort().
PHP mengekalkan indeks asal selepas mengocok tertib tatasusunan
PHP menyediakan fungsi shuffle()
, yang boleh mengocok susunan elemen dalam tatasusunan secara rawak. Walau bagaimanapun, perlu diingatkan bahawa fungsi ini hanya merombak susunan elemen dan tidak mengekalkan indeks asal. shuffle()
函数,可以随机打乱数组中的元素顺序。但是,需要注意的是,此函数只会打乱元素的顺序,而不会保留原始的索引。
实战案例:
предположим, у нас есть следующий массив:
$original = ['foo', 'bar', 'baz'];
如果我们使用 shuffle()
函数来打乱顺序:
shuffle($original);
那么我们可以得到一个打乱顺序后的数组:
$shuffled = ['baz', 'bar', 'foo'];
现在,如果我们想保留原始的索引,可以使用以下方法:
方法 1:创建一个新的数组
我们可以先创建一个带有原始索引的新数组,然后使用 shuffle()
函数打乱其中的元素:
$newArray = array_values($original); shuffle($newArray);
方法 2:使用 ksort()
ksort()
Kes praktikal:
🎜🎜предположим, у нас есть следующий массив:🎜ksort($shuffled);
shuffle()
untuk: . shuffle() dapat perintah untuk: pesanan berlipat-lipat Tatasusunan akhir: 🎜rrreee🎜 Sekarang, jika kita ingin mengekalkan indeks asal, kita boleh menggunakan kaedah berikut: 🎜🎜🎜Kaedah 1: Buat tatasusunan baharu 🎜🎜🎜 Mula-mula kita boleh mencipta tatasusunan baharu dengan indeks asal, dan kemudian Gunakan fungsi shuffle()
untuk mengocok elemen: 🎜rrreee🎜🎜Kaedah 2: Gunakan ksort()
🎜🎜🎜ksort() code> function Tatasusunan boleh diisih berdasarkan nilai kunci. Kita boleh menggunakan ciri ini untuk mengekalkan indeks asal: 🎜rrreee🎜 Kedua-dua kaedah di atas boleh mengekalkan indeks asal, tetapi kaedah 1 lebih mudah, manakala kaedah 2 lebih umum. 🎜
Atas ialah kandungan terperinci Bagaimana untuk mengekalkan indeks unsur asal selepas mengocok tatasusunan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!