Создать уникальные значения

140
09 января 2020, 13:40

Есть цифры от 1 до 73. Нужно из этого набора выбрать только 5 случайных, но чтобы они не повторялись.

for ($i=0; $i < 5; $i++) {
  echo rand(1,73).' - ';
}

Answer 1

Как один из вариантов:

$result = [];
while (count($result) < 5) {
    $n = rand(1,73);
    if (!in_array($n, $result)) {
        $result[] = $n;
    }
}
var_dump($result);
Answer 2
function rand_numbers($min,$max,$count){
    $num = range($min,$max);
    shuffle($num);
    return array_slice($num,0,$count);
}
print_r(rand_numbers(1,73,5));
Answer 3
$random = [];
$x = 5;
for ($i = 0; $i < $x; $i++) {
    $r = rand(1,73);
    (!in_array($r, $random)) ? $random[] = $r : $x++;
}
$random = implode($random, '-');
READ ALSO
Laravel при переназначении имени сломал приложение

Laravel при переназначении имени сломал приложение

Суть в том, что нужно было изменить имя приложения использовал команду php artisan app:name "DKP Online" - да, косякнул, случайно вставил пробел, теперь имею...

94
Установка composer пакета без Composer

Установка composer пакета без Composer

Хочу установить библиотеку https://githubcom/VKCOM/vk-php-sdk Но возможности установить её через composer нет, т

125
Как передать PHP в HTML?

Как передать PHP в HTML?

Есть нюанс, может подскажите если есть возможность, как правильно сделать? А то уже голову сломал

132
Как защитить удаление из SQL

Как защитить удаление из SQL

Я хочу удалить определенный элемент из массива, имею следующий PHP код

109