Gerar Um Id Aleatória
#1
Posted 01/04/2007, 22:43
Como posso fazer??
falou
#2
Posted 01/04/2007, 23:12
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#3
Posted 01/04/2007, 23:20
Veja este tópico:
http://forum.wmonlin...howtopic=174572
Teria como me esplicar esse código:
<pre><?phpprintf("%s\n", microtime());for ($i = 0; $i < 29999; $i++) { printf("%d - %08X\n", time(), crc32(time()));}printf("%s\n", microtime());?>ele irá gerar uma id de quantos caracteres??
Só lembrando, preciso que gere 6 caracteres (numeros e letras).
valeu =]
Edição feita por: thim, 02/04/2007, 00:12.
#4
Posted 02/04/2007, 00:50
O motivo pelo qual indiquei o tópico foi pelo último comentário, postado pelo amigo Paulo Ricardo.
Acredito que 6 caracteres não seja o adequado para o que deseja.
Edição feita por: Eclesiastes, 02/04/2007, 15:45.
Acréscimo de informação.
[...] ó terra, terra, terra; ouve a palavra do Senhor. — Jeremias 22:29
#5
Posted 03/04/2007, 16:03
Esse código é apenas para mostrar como é repetido o valor, já que time() não informa os milisegundos.
O motivo pelo qual indiquei o tópico foi pelo último comentário, postado pelo amigo Paulo Ricardo.
Acredito que 6 dígitos não seja o adequado para o que deseja.
Valeu cara, mas você tem alguma ideia de como eu possa fazer uma id aleatógia de 6 digitos (numeros e letras)?
Falou
Mais alguem?
#6
Posted 03/04/2007, 22:02
$sConso = 'bcdfghjklmnpqrstvwxyzbcdfghjklmnpqrstvwxyz';
$sVogal = 'aeiou';
$sNum = '123456789';
$pedido = '';
$y = strlen($sConso)-1; //conta o nº de caracteres da variável $sConso
$z = strlen($sVogal)-1; //conta o nº de caracteres da variável $sVogal
$r = strlen($sNum)-1; //conta o nº de caracteres da variável $sNum
for($x=0;$x<=1;$x++){
$rand = rand(0,$y); //Funçao rand() - gera um valor randômico
$rand1 = rand(0,$z);
$rand2 = rand(0,$r);
$str = substr($sConso,$rand,1); // substr() - retorna parte de uma string
$str1 = substr($sVogal,$rand1,1);
$str2 = substr($sNum,$rand2,1);
$geraNum .= $str.$str1.$str2;
}
?>
#7
Posted 17/04/2007, 13:34
- Minúscula
- Maiúscula
- Aleatória (minúsculas e maiúsculas)
- O tamanho da string de retorno é definido por você
- Você poderá adicionar caracteres especiais à sua string
<? class stringAleatoria { // cria a classe que retornará um conjunto aleatório de strings var $arr = 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','0','1','2','3','4','5','6','7','8','9'); // neste array deverão ficar todas as variáveis possíveis // neste exemplo só possui strings alfanumérias (a-z e 0-9) // você também poderá colocar caracteres especiais ( ! @ # $ % & * ) // // para acessá-la dentro da classe: "$this->arr" var $ret; // variável de retorno da string desejada var $tmp; // variável que guardará à cada volta do laço o caractere em questão function criaMinuscula($tam) { // função que retorna a string minúscula (a-z) for($i=1;$i<=$tam;$i++){ // este laço percorre de 1 até o número desejado de caracteres $tmp = $this->arr[rand(0,count($this->arr)-1)]; // cria uma variável temporária com o caractere de retorno if(is_string($tmp)){ // se for uma string (a-z) $ret .= strtolower($tmp); // retorna as strings em minúsculo } else { // se não for string, adiciona ela à variável final $ret = $ret.$tmp; } } return $ret; // retorna a varíavel que contém o conjunto de caracteres minúsculos de tamanho $tam } function criaMaiuscula($tam) { // função que retorna a string maiúscula (A-Z) for($i=1;$i<=$tam;$i++){ // este laço percorre de 1 até o número desejado de caracteres $tmp = $this->arr[rand(0,count($this->arr)-1)]; // cria uma variável temporária com o caractere de retorno if(is_string($tmp)){ // se for uma string (a-z) $ret .= strtoupper($tmp); // retorna as strings em maiúsculo } else { // se não for string, adiciona ela à variável final $ret = $ret.$tmp; } } return $ret; // retorna a varíavel que contém o conjunto de caracteres maiúsculos de tamanho $tam } function criaAleatoria($tam) { // função que retorna a string aleatória (a-z e A-Z) for($i=1;$i<=$tam;$i++){ // este laço percorre de 1 até o número desejado de caracteres $tmp = $this->arr[rand(0,count($this->arr)-1)]; // cria uma variável temporária com o caractere de retorno if(is_string($tmp)){ // se for uma string (a-z) $x = rand(0,1); // variavél aleatória 0 ou 1 if($x == 0){ // se a variável for 0 o caractere será minúsculo $ret .= strtolower($tmp); // retorna as strings em minúsculo } else { // se a variável for diferente de 0 o caractere será maiúsculo $ret .= strtoupper($tmp); // retorna as strings em maiúsculo } } else { // se não for string, adiciona ela à variável final $ret = $ret.$tmp; } } return $ret; // retorna a varíavel que contém o conjunto de caracteres aleatórios de tamanho $tam } } $var = new stringAleatoria(); // instanciando a classe stringAleatoria $min = $var->criaMinuscula(20); // retorno da string minúscula de 20 caracteres $mai = $var->criaMaiuscula(20); // retorno da string maiúscula de 20 caracteres $ale = $var->criaAleatoria(20); // retorno da string aleatória de 20 caracteres echo '<pre> » Minúscula: '.$min.'<br> » Maiúscula: '.$mai.'<br> » Aleatória: '.$ale.'</pre>'; // imprime os resultados?>
Qualquer dúvida é só postar.
Abraços.
Edição feita por: Tibério Brasil, 17/04/2007, 13:37.
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)