这是我的代码:
function get_random(){
$filter_word = '1,2,3,4,5,6,7,8,9';
$array = explode(',', $filter_word);
$randomKeys = array_rand($array, 2);
$str = '';
foreach($randomKeys as $key){
$str = $array[$key];
}
return $str;
}
如果我使用array_rand
的问题,我必须知道可以在array_rand
中添加数字的元素数量,我不知道这样的事情(它是存储在数据库中的数据)因此,如果元素小于2,则会给出错误:
警告:array_rand():第二个参数必须介于1和数组中的元素数之间
有更好的方法吗?
答案 0 :(得分:0)
我想你正在寻找这样的东西:
$randCount = rand(1, count($array));
$randomKeys = array_rand($array, $randCount);
答案 1 :(得分:0)
您可以在使用count()
-
array_rand
function get_random(){
$filter_word = '1,2,3,4,5,6,7,8,9';
$array = explode(',', $filter_word);
$str = '';
if(count($array)>1){
$randomKeys = array_rand($array, 2);
foreach($randomKeys as $key){
$str = $array[$key];
}
}
else{
$str = $filter_word;
}
return $str;
}