如何从 PHP 中的数组中获取最小值的随机索引

我有一个这样的数组:


$a[0] = 2;

$a[1] = 7;

$a[2] = 5;

$a[3] = 2;

$a[4] = 2;

$a[5] = 3;

我想获得此数组中仅最小值的随机索引。

在上面的数组中,函数应该返回 0 或 3 或 4,因为2是该数组中唯一的最小值。


森栏
浏览 176回答 2
2回答

慕斯709654

<?php$a = [];$a[0] = 2;$a[1] = 7;$a[2] = 5;$a[3] = 2;$a[4] = 2;$a[5] = 3;$min_val = min($a);$min_indexes = [];foreach($a as $i => $val){&nbsp; &nbsp; if($val == $min_val) $min_indexes[] = $i;}print_r($min_indexes);echo $min_indexes[rand(0,count($min_indexes)-1)];演示: https : //3v4l.org/PXcq4首先,从数组中获取最小值。现在,收集具有此最小值的所有索引。现在,使用rand()从过滤集合的索引生成随机数。

海绵宝宝撒

您可以array_keys使用array_flip,&nbsp;array_rand,min函数echo&nbsp;array_rand(array_flip(array_keys&nbsp;($a,&nbsp;min($a))));现场示例:-&nbsp;https://3v4l.org/b4La1
打开App,查看更多内容
随时随地看视频慕课网APP