Ver Mensaje Individual
  #6 (permalink)  
Antiguo 04/09/2011, 18:12
Avatar de jorgelpadronb
jorgelpadronb
 
Fecha de Ingreso: agosto-2011
Ubicación: Cuba
Mensajes: 281
Antigüedad: 12 años, 8 meses
Puntos: 37
Respuesta: Programar un campo UUID con PHP

Saludos a todos. Gracias por sus consejos. Gracias masterpuppet por las referencias. Revisé los links y los bajé. Pasa que el autor del artículo propone toda una clase para generar UUID. En realidad lo que yo quiero es un procedimiento simple para incorporar a mi propia clase de manejo de datos. Yo he creado este que muestro, que simula el funcionamiento de un campo autonumérico. Lo probé y no falla. Funciona bien rápido, a pesar de que no tiene un algoritmo muy elaborado. Lo dejo para que lo revisen y me digan como se puede optimizar más, aunque en última instancia, este funciona bien. Realmente yo no veo ninguna diferencia entre esto y un autonumérico, pero si el cliente lo quiere así, así va. Yo entro como referencia inicial el SQL y el nombre del campo que va a funcionar como UUID, luego extraigo todo el campo a un array y lo escaneo con un incremento numérico, buscando el primer valor numérico disponible y lo genero como resultado. Revísenlo a ver si se puede optimizar mas. Gracias.

function CalcUUID($SQL,$CampoUUID){
if($this->Con){
if($this->Bdt){
if($sqlrst=$this->EjecSQL($SQL)){
$i=0;
while($row=mysql_fetch_array($sqlrst)){
$i++;
$IDs[$i]=$row[$CampoUUID];
}
if($i>0){
$Tnum=0;
do{
$Tnum++;
$Disp=true;
foreach($IDs as $elm){
if($elm==$Tnum){
$Disp=false;
break;
}
next($IDs);
}
}while(!$Disp);
return $Tnum;
}else{
return 1;
}
}else{
return 1;
}
}
}
}