Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Случайный элемент массива
 
 автор: admin   (18.11.2011 в 16:52)   письмо автору
 
 

доброго времени суток
есть созданный массив,в нем примерно около 100 пунктов, нужно чтобы случайно выпадал массив, подскажите как сделать?

  Ответить  
 
 автор: Lotanaen   (18.11.2011 в 16:59)   письмо автору
 
   для: admin   (18.11.2011 в 16:52)
 

может быть функция shuffle() вам подойдет?

  Ответить  
 
 автор: admin   (18.11.2011 в 17:15)   письмо автору
 
   для: Lotanaen   (18.11.2011 в 16:59)
 

эта функция выводит все что есть в аррай в разбросанном виде, нужно чтобы выводило только 1

  Ответить  
 
 автор: Lotanaen   (18.11.2011 в 17:16)   письмо автору
 
   для: admin   (18.11.2011 в 17:15)
 

ну берите только первый элемент массива

  Ответить  
 
 автор: admin   (18.11.2011 в 17:25)   письмо автору
 
   для: Lotanaen   (18.11.2011 в 17:16)
 

а как это сделать?

  Ответить  
 
 автор: Lotanaen   (18.11.2011 в 17:30)   письмо автору
 
   для: admin   (18.11.2011 в 17:25)
 

$arr[0];

  Ответить  
 
 автор: admin   (18.11.2011 в 17:37)   письмо автору
 
   для: Lotanaen   (18.11.2011 в 17:30)
 

так shuffle($arr[0]);?

  Ответить  
 
 автор: cheops   (18.11.2011 в 17:41)   письмо автору
 
   для: admin   (18.11.2011 в 17:37)
 

Нет-нет, shuffle() перемешивает массив по ссылке, т.е. нужно действовать так
<?php
  
...
  
shuffle($arr);
  echo 
$arr[0];
  ...
?>

  Ответить  
 
 автор: cheops   (18.11.2011 в 17:25)   письмо автору
 
   для: admin   (18.11.2011 в 17:15)
 

Тогда удобно воспользоваться функцией array_rand() - она возвращает заданное вами количество случайных значений.

  Ответить  
 
 автор: admin   (18.11.2011 в 17:42)   письмо автору
 
   для: cheops   (18.11.2011 в 17:25)
 

все всем спасибо, сделал по другому
$num = mt_rand(0,100);
$arrs = $arr[$num];
echo $arrs;

  Ответить  
 
 автор: cheops   (18.11.2011 в 17:44)   письмо автору
 
   для: admin   (18.11.2011 в 17:42)
 

Лучше вместо 100 использовать count($arr) - 1, универсальнее и точнее, ведь в массиве со 100 элементами максимальный индекс только 99.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования