Рандомные значения из массива

Рейтинг: 0Ответов: 1Опубликовано: 21.02.2015

Как выводить постоянно рандомные значения? array_rand не помог, так как не умеет работать с такими массивами:

$win_game_array = array(
 'Premium Minecraft' => '#127a0c',
 'CS: Global Offensive' => '#181cad',
 'Watch Dogs' => '#776b35',
 '"Секрет"' => '#e63e3e',
 'Steam random key' => '#bf58b9',
 'Battlefield 4' => '#a7911a',
 'Dayz Standalone' => '#3f988f',
 'ArmA 2' => '#d2ff00'
);

foreach($win_game_array as $key => $value) {
 echo '<div class="list_li"><span style="color: '.$value.'">'.$key.'</span></div>';
}

Ответы

▲ 5Принят

array_rand не помог, так как не умеет работать с такими массивами:

шта?

<?php

$win_game_array = array(
 'Premium Minecraft' => '#127a0c',
 'CS: Global Offensive' => '#181cad',
 'Watch Dogs' => '#776b35',
 '"Секрет"' => '#e63e3e',
 'Steam random key' => '#bf58b9',
 'Battlefield 4' => '#a7911a',
 'Dayz Standalone' => '#3f988f',
 'ArmA 2' => '#d2ff00'
);

var_dump(array_rand($win_game_array));

Возвращает, как и ожидалось, рандомный ключ:

etki@vmint:~ > php t.php 
string(15) "Dayz Standalone"
etki@vmint:~ > php t.php 
string(17) "Premium Minecraft"

если вам нужно значение - берите его по ключу:

$randomKey = array_rand($win_game_array);
$randomValue = $win_game_array[$randomKey];