У меня есть этот код PHP:
$char = array_merge(range('a', 'z'), range('A', 'Z'), range(0, 9));
$i = 0;
while ($i <= 5) {
$var .= $char[rand(0,68)];
$i++;
}
echo $var;
С первого взгляда он должен генерировать 6-символьную строчку (например, eVx97j).
Я делаю большую часть времени, но в некоторыхв некоторых случаях это повторяет строки из 5 и 4 символов.
Я почти уверен, что это из-за this :
( НЕ МОЖЕТ БЫТЬ НИЧЕГО С ПРОБЛЕМОЙ )
[50]=>
string(1) "Y"
[51]=>
string(1) "Z"
[52]=>
int(0)
[53]=>
int(1)
[54]=>
int(2)
Видите разницу?
Меня удивляет то, что код генерирует строку с числами.
Так вы можете определитьошибка?
Является ли это правильным способом в PHP для выражения az + AZ + 0-9 символов?
Заранее спасибо !!
Пожалуйста, попросите пояснения!
Кстати: я тоже пробовал: $char = array_merge(range('a', 'z'), range('A', 'Z'), range('0',' 9'));