Witam. Tak jak w temacie. Znalazłem funkcję uniqid ale ona zawiera w swojej puli również cyfry a ja chcę aby były to tylko litery alfabetu. Jakiej funkcji urzyc lub jak urzyc funkcji uniqid aby wyswietlala tylko litery alfabetu???
Możesz napisać sobie własną funckję , np. coś takiego:
<?php
$litery = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
$ciag = '';
for($i = 0; $i < 11; $i++)
{
$liczba = rand(0, 25);
$ciag = $ciag.$litery[$liczba];
}
echo $ciag;
?>
Będziesz wiedział jak to dostosować do swoich potrzeb?
spooko dzięki
Troszkę podobnie:
<?php
$ile_znakow=10;
$znaki='abcdefghijklmnoprstuwxyzABCDEFGHIJKLMNOPRSTUWXYZ';
$token='';
for($i=0;$i<$ile_znakow;$i++) $token.=$znaki[mt_rand(0,47)];
echo $token;
?>
Cos nie cos dodalem i wyszlo cos takiego:
<?
for($i=0; $i<1000; $i++)
{
$litery = array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z');
$ciag = '';
for($i = 0; $i < 5; $i++)
{
$liczba = rand(0, 27);
$ciag = $ciag.$litery[$liczba];
}
echo $ciag;
echo "
";
}
?>
A czy dało by się aby skrypt generował ciągi tak by się nie powtarzały?
Nie wiem czy dobrze zrozumiałem. Chcesz wygenerować i wyświetlić 1000 ciągów, z czego każdy ma być inny?
zgadza się
<?php
$ile_tokenow_wygenerowac=1000;
$tokeny=array();
$numerek=0;
while(count($tokeny)<$ile_tokenow_wygenerowac) {
$ile_znakow=10;
$znaki='abcdefghijklmnoprstuwxyzABCDEFGHIJKLMNOPRSTUWXYZ';
$token='';
for($i=0;$i<$ile_znakow;$i++) $token.=$znaki[mt_rand(0,47)];
if(!in_array($token,$tokeny)) $tokeny[$numerek++]=$token;
}
echo '
';
print_r($tokeny);
?>