使用

时间:2017-10-27 16:06:25

标签: php

我有这个代码,它生成一个带范围的数字列表,里面有一个变量,我需要随机获得1个输出数字

$lprincipiopregunta = implode(',' , range('1', $clpyrdesde, '2'));

如果$ clpyrdesde为18,则输出为“1,3,5,7,9,11,13,15,17”,但我需要随机输出1个输出数字。

2 个答案:

答案 0 :(得分:0)

如果implode()对您来说非常重要,您必须在代码中使用

你可以在它之后使用explode,rand()就像这样使用

$lprincipiopregunta = implode(',' , range('1', $clpyrdesde, '2'));
$explodeit = explode(",", $lprincipiopregunta);
echo $explodeit[rand(0,count($explodeit)-1)];

array_rand()explode()

$lprincipiopregunta = implode(',' , range('1', $clpyrdesde, '2'));
$explodeit = explode(",", $lprincipiopregunta);
echo $explodeit[array_rand($explodeit)];

或者我建议在array_rand()之前使用implode(),就像这样。

$array = range('1', $clpyrdesde, '2');
echo $array[array_rand($array)];

答案 1 :(得分:0)

如果您只需要一个随机数,则不需要implode()。

这样做:

$numbers = range(1, $clpyrdesde, 2);
$lprincipiopregunta = $numbers[array_rand($numbers)];