Keluaran 1
The rows of random 2d array are: 8 and columns are: 10
Random 2d array generated is:
74 159 431 273 45 379 424 210 441 166
493 43 488 4 328 230 341 113 304 170
210 158 61 434 100 279 317 336 98 327
13 268 311 134 480 150 80 322 468 173
394 337 486 246 229 92 195 358 2 154
209 445 169 491 125 197 31 404 223 167
50 25 302 354 478 409 229 434 299 482
136 14 366 315 64 37 426 170 116 95
_Keluaran 2
The rows of random 2d array are: 1 and columns are: 8
Random 2d array generated is:
99 93 441 129 111 305 439 185
Catatan. srand() digunakan untuk mengatur titik awal dengan seed untuk menghasilkan bilangan acak semu. Dan jangan lupa untuk mengimpor tajuk "#include".
*Saya perlu mengacak array multidimensi agar urutan pertanyaan dalam kuesioner berbeda untuk setiap peserta
Saya memiliki keterampilan php yang terbatas, dan sedang memodifikasi skrip lama yang ditulis orang lain. Saat ini, pertanyaan disajikan dalam urutan yang sama dengan yang tercantum dalam larik. Saya membutuhkannya untuk disajikan dalam urutan acak yang berbeda setiap kali. Array adalah array yang terdiri dari array lain dan terlihat seperti ini
$original_items = array(
array(1,'stuff','info',response1,'info',response2'),
array(2,'stuff','info',response1,'info',response2'),
array(3,'stuff','info',response1,'info',response2'),
array(4,'stuff','info',response1,'info',response2'),
* Saya sudah mencoba mengocok. Ini menyajikan item acak tetapi saya membutuhkan setiap item dalam array untuk disajikan tepat sekali. Saya juga memiliki skrip pengacakan pendek yang biasa kami gunakan, tetapi itu membuat 1 urutan acak, bukan yang baru setiap kali, e. g. (untuk array dengan 100 item)
//for($count=0; $count<100; $count++){
for($index=100; $index>=0; $index--){
if(count % 2 == 0 && index % 2 == 0){
$temp = $items[$count];
$items[$count] = $items[$index];
$items[$index] = $temp;
}
}
}
_Setiap bantuan dihargai
php
0 0
Membagikan
- 6 Kontributor
- 10 Balasan
- 2K Tampilan
- 1 Tahun Rentang Diskusi
- Pos Terbaru Pos Terbaru oleh cgi. bersih
Jawaban yang Direkomendasikan
Dijawab oleh YuriyHorobey 0 dalam
Jadi Anda tidak perlu mengocok array multidimensi (ini menyiratkan bahwa elemen 'subarrays' juga perlu dikocok)
Anda hanya perlu mengocok elemen array 'induk'
Ini dapat dilakukan dengan fungsi PHP standar
Dijawab oleh YuriyHorobey 0 dalam
Menurut saya Anda memiliki array dengan 100 elemen dan ingin mengambil 4 yang acak tapi unik, bukan?
Dijawab oleh JRM 107 dalam
Mengapa tidak meletakkan pertanyaan di tabel database dan memilih id baris secara acak?
Semua 10 Balasan
YuriyHorobey 0 Poster Pemula
12 tahun yang laluJadi Anda tidak perlu mengocok array multidimensi (ini menyiratkan bahwa elemen 'subarrays' juga perlu dikocok)
Anda hanya perlu mengocok elemen array 'induk'
Ini dapat dilakukan dengan shuffle fungsi PHP standar ()
$original_items = array(
array(1,'stuff','info',response1,'info',response2'),
array(2,'stuff','info',response1,'info',response2'),
array(3,'stuff','info',response1,'info',response2'),
array(4,'stuff','info',response1,'info',response2'),
);
shuffle($original_items);
0 0
Membagikan
JennyK 0 Poster Pemula
12 tahun yang laluSayangnya, pengacakan tidak berfungsi karena hanya mengambil nilai acak, memungkinkan pengulangan dan juga melewatkan beberapa item. e. g. , untuk contoh array saya dengan 4 item, pengacakan akan menampilkan empat item, tetapi itu bisa berupa "item 4, item 2, item 3, item 2"
Saya perlu mempresentasikan setiap item satu kali, tanpa melewatkan item apa pun
Tapi terima kasih atas tipnya. Saya kira saya tidak memiliki array multidimensi
0 0
Membagikan
YuriyHorobey 0 Poster Pemula
12 tahun yang laluMenurut saya Anda memiliki array dengan 100 elemen dan ingin mengambil 4 yang acak tapi unik, bukan?
0 0
Membagikan
JRM 107 Praktis Poster Utama
12 tahun yang laluMengapa tidak meletakkan pertanyaan di tabel database dan memilih id baris secara acak?
0 0
Membagikan
rajarajan2017
12 tahun yang laluLogika
";
for ($x = 0; $x < sizeof($original_items); $x++) {
$k = $filter_field[$x];
for ($y = 0; $y < 5; $y++) {
echo $original_items[$k-1][$y];
}
echo "
";
}
?>
_Jalankan kode itu akan mengembalikan nilai array acak
0 0
Membagikan
JennyK 0 Poster Pemula
12 tahun yang laluMenurut saya Anda memiliki array dengan 100 elemen dan ingin mengambil 4 yang acak tapi unik, bukan?
Hai
Tidak, saya sebenarnya memiliki array dengan 100 elemen, dan saya ingin mengambil masing-masing satu kali dalam urutan acak, tanpa melewatkan elemen apa pun dan tanpa mengulangi elemen apa pun. Array contoh dengan 4 elemen hanya untuk memberi contoh
Harapan yang menjelaskan hal-hal
0 0
Membagikan
rajarajan2017
12 tahun yang laluHai Jenny, semoga kode saya akan berfungsi dengan sejumlah elemen. Apakah Anda akan mengujinya?
0 0
Membagikan
Diedit 12 Tahun Lalu oleh rajarajan2017 karena. t/a
kentang 0 Poster Pemula
12 tahun yang laluSebarkan ke array baru, lakukan pemeriksaan kasar apakah nilai untuk setiap indeks sama jika tidak diubah ulang
0 0
Membagikan
YuriyHorobey 0 Poster Pemula
12 tahun yang laluJennyK
Sayangnya kondisi Anda tidak jelas
Jadi saya harus menebak
Lihat -- shuffle() hanyalah fungsi 'pencampur', ia tidak akan mengulangi elemen larik awal apa pun (asalkan larik awal tidak memiliki pengulangan sendiri), dan shuffle() juga tidak akan melewatkan elemen apa pun
Jika Anda memiliki array dengan 100 elemen shuffle() akan mengembalikan array yang sama dengan 100 elemen yang sama tetapi dalam urutan acak di dalam array
Bagaimana cara memilih nilai acak dari array di PHP?
Fungsi array_rand() mengembalikan kunci acak dari larik, atau mengembalikan larik kunci acak jika Anda menentukan bahwa fungsi tersebut .
Bagaimana cara mengocok array multidimensi di PHP?
Acak array multidimensi secara rekursif
. Array ( [0] => Array ( [0] => Array ( [0] => D [1] => C [2] => A [3] => B [4] => E ) ) [1 . )
Bagaimana cara mengacak array di PHP?
Fungsi shuffle() adalah fungsi bawaan dalam PHP dan digunakan untuk mengocok atau mengacak urutan elemen dalam array. Fungsi ini menetapkan kunci baru untuk elemen dalam larik. Itu juga akan menghapus kunci yang ada, bukan hanya menyusun ulang kunci dan menetapkan kunci numerik mulai dari nol.
Apa perbedaan antara array_rand dan shuffle di PHP?
shuffle mengubah urutan elemen array. Ini adalah fungsi pengurutan. array_rand mengembalikan n (argumen[1], default ke 1) elemen acak dari array . Ini mengembalikan kunci (untuk argumen[1] == 1) atau array kunci (untuk argumen[1] > 1) yang mereferensikan elemen array (argumen[0]).