PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: shuffle, array_pop, массив и несколько переменных
Dorn
Отправлено: 27 Июня, 2022 - 12:50:34
Post Id


Новичок


Покинул форум
Сообщений всего: 9
Дата рег-ции: Июнь 2022  


Помог: 1 раз(а)




//Тасуем (shuffle) все карты (N) и выбираем (array_pop) несколько (M) верхних
function rndCards($M, $N) {
for ($i=1;$i<=$N;$i++) $all[]=$i; shuffle($all);
for ($i = 1; $i <=$M ; ++$i) {
$charasters = array_pop($all);
echo $charasters.' <br /> '.$array[$charasters] . PHP_EOL;
}
}

//вытаскиваем 3 из 78
rndCards(3, 78);
/*
как сделать так, чтобы он сам создал массив с переменными нужного количества (M) например
$rndCard.$отодногодотрёх
и присвоил им выбранные значения? Пример для выпавших чисел 16/34/22


$rndCard1 = file_get_contents('16.php');
$rndCard2 = file_get_contents('34.php');
$rndCard3 = file_get_contents('22.php');


*/
 
 Top
Строитель Модератор
Отправлено: 27 Июня, 2022 - 13:43:46
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




Dorn
PHP:
скопировать код в буфер обмена
  1. function randCards(int $someCards, int $max = 36): array
  2. {
  3.     $allCards = range(1, $max); // Создать массив чисел (карт)
  4.     shuffle($allCards); // Перемешать
  5.  
  6.     // Взять последние N карт и вернуть новый массив этих чисел
  7.     return array_slice($allCards, count($allCards) - $someCards);
  8. }
  9.  
  10. // Визуальный контроль
  11.     randCards(3), // 36 карт поумолчанию
  12.     randCards(4, 78)
  13. );
  14.  
  15. $results = [];
  16.  
  17. foreach (randCards(3, 78) as $card) {
  18.     // Убедиться !!! в правильном пути к файлу перед вызовом file_get_contents(), как-то так
  19.     if ( ($content = @ file_get_contents($card)) !== false ) {
  20.         $results[] = $content;
  21.     }
  22. }
  23.  
  24. // Визуальный контроль
  25. var_dump( $results );
 
 Top
Dorn
Отправлено: 27 Июня, 2022 - 17:40:12
Post Id


Новичок


Покинул форум
Сообщений всего: 9
Дата рег-ции: Июнь 2022  


Помог: 1 раз(а)




Это бо жест вен но! И стиль и слог и код =)
Как будто учебник открылся мне человеческой стороной :-*
 
 Top
Строитель Модератор
Отправлено: 27 Июня, 2022 - 20:02:27
Post Id



Участник


Покинул форум
Сообщений всего: 1580
Дата рег-ции: Февр. 2014  
Откуда: Украина


Помог: 73 раз(а)




Dorn пишет:
Это бо жест вен но! И стиль и слог и код =)
Как будто учебник открылся мне человеческой стороной :-*

Радость
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 1 (гостей: 1, зарегистрированных: 0)
« Вопросы новичков »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB