Jak wygenerowac przypadkowy ciąg znaków w php?

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ę :wink: , 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);

?>