Нашел код генерации случайного пароля. Код (PHP): //Символы, которые будут использоваться в пароле. $chars = "qwertyuiopasdfghjklzxcvbnmQWERTYUIOPASDFGHJKLZXCVBNM1234567890"; //Определяем количество символов в $chars. $size = StrLen($chars)-1; //Определяем пустую переменную, в которую и будем записывать символы. $b = null; //Создаём пароль. for ($a = 1; $a <= 10; $a++) { $b.=$chars[rand(0,$size)]; } echo $b; Мне в нем все понятно кроме одной строки, которая в цикле. Не пойму почему если выводить строку полностью$b.=$chars[rand(0,$size)], то появляются именно разные буквы и цифры. А если отдельно вывести $chars[rand(0,$size)], то выводятся случайные числа от 0 до 61...
В своем коде я так и делаю как Вы указали - спасибо, что уточнили. Да, Вы правы - невнимателен - выводятся не только цифры, но и буквы, указанные в $chars)) P.S. Всем спасибо - разобрался.
Код (PHP): echo substr(str_shuffle("0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"), 0, 10);
shuffle только переставляет элементы местами, без повторов. в итоге сложность "пароля" будет не 64 в 10й степени, а число перестановок. на полной строке сложность такого пароля равна факториалу от 64. а на укороченной меньше в хз сколько раз. давно я математику учил. короче брутфорсом будет подобрать реально. нафиг такую "оптимизацию"!
Типичный случай, что ты хотел? Ну можно заморочиться с генератором из самой таблицы chr. Этим сделать его уникальным и независимым.
А не надо морочаться. В первом посте указан годный алгоритм. ТС просто сам себя заморочал, глюканул при изучении. Не надо решать несуществующие проблемы.