Пятница, 2025-06-20, 2:45 PM
Приветствую Вас Гость | RSS
Главная | Генератор случайных чисел и слов в PHP | Регистрация | Вход
Меню сайта
Вход на сайт
Поиск
Друзья сайта
  • Официальный блог
  • Сообщество uCoz
  • FAQ по системе
  • Инструкции для uCoz
  • Программирование

    Генератор случайных чисел и слов в PHP

     

     

    Для чего можно использовать генератор случайных чисел и слов?

    Например, случайный пароль. Рассмотренный  ниже скрипт (скорее php код) очень хорошо подходит для таких функций как верификация, создание инвайтов, создание автоматического сложного пароля и последующего его отправки на мыло и многого др.

    Также генератор можно использовать как защитный код (или капча). Такой код может выводиться, например, в виде картинки. В общем, приведенный ниже скрипт генерации, очень полезен во многом. Куда его использовать я оставляю на ваше усмотрение.

    Сначала необходимо задать область случайных символов. Делать это будим с помощью двух функций: range и array_merge()

    range – эта функция создает диапазон значений, например:

    range('A', 'Z') – создаст диапазон от A до Z включительно.
    range('0', '9') – создаст диапазон от 0 до 9 соответственно.
    array_merge() – слияние массивов. 
    Создаем переменную $code

    $code= array_merge( range('A', 'Z'), range('0', '9'));

    она сливает массивы, перечисленные в ее аргументах, в  один большой массив и  возвращает результат.
    Создаем сеансовую переменную $_SESSION и присваеваем ей пустоту

    $_SESSION['code'] = ' ';

    Запускаем цикл пока не достигнет наш случайный код 5-и знакам.

    for ($i = 0; $i < 5; $i++) 
    И наконец, формируем код:

    $_SESSION['code'] .= $code[array_rand($code)];

    Ну и проверяем работоспособность нашего кода
    echo $_SESSION['code'];
    Вот как будет выглядеть наш PHP код:

    <?PHP 
    $code= array_merge( range('A', 'Z'), range('0', '9'));
    $_SESSION['code'] ='';
    for ($i = 0; $i < 5; $i++)
    $_SESSION['code'] .= $code[array_rand($code)];
    ?>

    Еще один очень интересный момент:

    Часто из защитного кода, для его лучшего распознания, выкидывают плохо читабельные символы, такие как 0 O 1 J I ну и далее на ваше усмотрение. Делается это очень просто.

    $code= array_merge( range('A', 'H'), array('K', 'M', 'N', 'P'),range('R', 'Z'), range('1', '9'));

    В данном случае я выкинул I, J, L, O,0 и Q. 
    array – это ряд конкретных значений.

     

     

    uCozCopyright MyCorp © 2025