нужна помощь с array_rand

leshin

Гуру форума
Регистрация
4 Май 2007
Сообщения
221
Реакции
65
Есть такой скрипт:
PHP:
function Script(){
	global $delta;
	if (isset($delta)) {return $delta[array_rand($delta)];} else
	{return "";}
}
код для $delta
PHP:
	if (is_file("links.txt")){
		$delta=file("links.txt");
	} else
	{
		$delta="";
	}
функция выполняет выбор случайной ссылки из файла links.txt.
Помогите изменить функцию Script так, чтобы выбиралась случайно не одна ссылка, а сразу 3 и все случайно. Спасибо.
 
Есть такой скрипт:
PHP:
function Script(){
	global $delta;
	if (isset($delta)) {return $delta[array_rand($delta)];} else
	{return "";}
}
функция выполняет выбор случайной ссылки из файла links.txt.
Помогите изменить функцию Script так, чтобы выбиралась случайно не одна ссылка, а сразу 3 и все случайно. Спасибо.
PHP:
function Script(){
	global $delta;
	if (isset($delta)) {
for($i=1; $i<=3; $i++;){
$ard[$i]=$delta[array_rand($delta)];}
return $ard;} else
	{return "";}
}
а потом циклом foreach вытянешь все 3 ссылки из массива $ard
 
PHP:
function Script(){
	global $delta;
	if (isset($delta)) {
for($i=1; $i<=3; $i++;){
$ard[$i]=$delta[array_rand($delta)];}
return $ard;} else
	{return "";}
}
а потом циклом foreach вытянешь все 3 ссылки из массива $ard
все таки лучше использовать красивое решение, чем циклы, тем более функция array_rand это позволяет:
PHP:
function Script(){
	global $delta;
	if (isset($delta)) {
$ard=$delta[array_rand($delta,3)]; // второй параметр указывает какое количество элементов вернуть
return $ard;} elsу
	{return "";}
}
 
все таки лучше использовать красивое решение, чем циклы, тем более функция array_rand это позволяет:
PHP:
function Script(){
	global $delta;
	if (isset($delta)) {
$ard=$delta[array_rand($delta,3)]; // второй параметр указывает какое количество элементов вернуть
return $ard;} elsу
	{return "";}
}
выдает ошибку Illegal offset type для строки:
$ard=$delta[array_rand($delta,3)];
 
Правильно ругается...В результате у тебя получается дето такое выражение $ard=$delta[1, 30, 15];
оставь так:
PHP:
function Script(){
    global $delta;
    if (isset($delta)) {
$ard=array_rand($delta,3); // второй параметр указывает какое количество элементов вернуть
return $ard;} else
    {return "";}
}
$ard - это массив случайных ключей
А в месте где у тебя ссылки выкладываются выложи их циклом
PHP:
foreach($ard as $key=>$value){
echo $delta[$value];
}
 
Назад
Сверху