我有一个像这样1000行的数组,我想转换成一个字符串,但只有50行。
$thearray = Array
(
[0] => row1
[1] => row2
[2] => row3
[3] => row4
[4] => row5
[5] => row6
...
[999] => row1000
)
输出应该像我使用的那样:
$string1 = implode(',', $thearray);
但正如我所说,我需要$string1
从数组中只有50行,如果可能的话,让它们随机化。我需要一些建议。 THX
答案 0 :(得分:0)
您可以尝试此操作,请参阅代码中的注释以获取解释,并http://3v4l.org/hjuv6进行演示
// Lets create a dummy array
$array = array();
for($i = 0; $i < 1000; $i++) {
$array[] = $i;
}
// Lets make a randomized temporary array
$backUpArray = $array;
$tempArray = array();
for($i = 0; $i < 50; $i++) {
// Select random Index
$randomIndex = rand(0 , count($backUpArray));
// Copy it to the temp array
$tempArray[] = $backUpArray[$randomIndex];
// Delete the row from our backup
unset($backUpArray[$randomIndex]);
// Reorganize the key indexes
$backUpArray = array_values($backUpArray);
}
$string1 = implode(",", $tempArray);
var_dump($string1);