Asked Oct 22nd, 2020 6:54 a.m. 108 0 2
  • 108 0 2
0

Cách include ngẫu nhiên vài trang PHP trong 1 trang PHP chính?

Share
  • 108 0 2

Mình có 12 trang PHP con dùng để in những snippet ngắn: a.php, b.php, c.php, d.php.... k.php, l.php

Ví dụ, a.php

print "I like Chopin.";

Bây giờ mình muốn một trang index.php sẽ include ngẫu nhiên 2 trang (nhưng 2 trang không được trùng nhau). Ví dụ, a.php và e.php, hoặc j.php và b.php.

Làm sao để đạt được mục đích này?

2 ANSWERS


Answered Oct 22nd, 2020 7:00 a.m.
Accepted
+4

Theo mình thì bạn đưa những list những trang của bạn vào một array, rồi dùng hàm array_rand để lọc ra 2 key bất kì nào đó, rồi lấy giá trị của 2 key đó

Share
Avatar Dr Dokkan @dokkan7
Oct 22nd, 2020 7:02 a.m.

Mình thấy cách của bạn rất ok. Để xem có thêm phương án khác nữa không. Cảm ơn.

0
| Reply
Share
Answered Oct 24th, 2020 3:42 a.m.
0

Qua test thử nghiệm, bạn có thể sắp xếp một array

$input = array("a.php", "b.php","c.php", "d.php", "e.php");

Sau đó có thể dùng hàm array_rand hoặc shuffle.

shuffle($input);
echo $input[0];
echo $input[1];

Mình phát hiện ra có sự khác nhau nhỏ giữa 2 hàm này. array_rand sẽ cho kết quả có thứ tự, ví dụ: a.php và d.php, hoặc b.php và e.php (nghĩa là A sẽ luôn xuất hiện trước B, C, D, E...) shuffle thì ngẫu nhiên hoàn toàn vì nó thay đổi vị trí các element trong array ngay từ đầu.

Share
Viblo
Let's register a Viblo Account to get more interesting posts.