хорошо, тогда так
$r['alfa'] =3;
$r['beta'] =9;
$r['gamma'] =0;
$r['delta'] =6;
Добавлено: 05.05.2017 / 23:03
Koenig, не совсем понимаю как это мне поможет
$r['alfa'] =3;
$r['beta'] =9;
$r['gamma'] =0;
$r['delta'] =6;
заменится на
$a['0'] =3;
$a['1'] =9;
$a['2'] =0;
$a['3'] =6;
функция myrand вернёт к примеру индекс 1,
и как мне соотнести этот индекс 1 с массивом $r, а точнее с $r['beta']?
Добавлено: 05.05.2017 / 23:06
надо чтоб получилось что-то типа так
echo 'Выбрана картинка с id: '. myRand(); => Выбрана картинка с id: beta
спасибо, то что ДоХтор прописал
dilp, вот вариант по шустрее
session_id() ?: session_start();
$r = [
'alfa' => 3,
'beta' => 9,
'gamma' => 0,
'delta' => 6
];
echo 'Выбрана картинка с id: '. myRand($r);
function myRand($r) {
do {
if (!empty($_SESSION['freak'])) {
$a = &$_SESSION['freak'];
$k = array_rand($a);
empty($a[$k]) ?: --$a[$k];
if ($a[$k] < 1) {
unset($a[$k]);
}
} else {
$_SESSION['freak'] = $r;
}
} while (empty($k) || empty($a[$k]));
return $k;
}
Меня смущает применение сессии, её ведь можно как-то подделать и повлиять на выборку?