Самый простой способ - использовать shuffle с массивом, содержащим 100 чисел
, например
$sequence = range(1, 100);
shuffle($sequence);
foreach ($sequence as $num) {
echo 'h{'.$num.'}';
}
Также см. диапазон функция
EDIT
Я подумал, что могу добавить немного о том, что делает шаффл. Хотя php.net прямо не говорит об этом, он, вероятно, основан на современной версии алгоритма перемешивания Фишера-Йейтса . Для демонстрации видео, как это работает, см. http://www.youtube.com/watch?v=Ckh2DJrP7F4. Также посмотрите эту превосходную вспышку демонстрацию
Алгоритм перемешивания по сути работает так:
- Для заданного набора элементов от А1 до AN и n = N;
- Произвольно выбрать элемент Ak между A1 и An включительно
- Поменяйте местами Ак и Ан
- Установить n = n - 1
- Повторите с шага 2
Надеюсь, это поможет.