PHP: Funcion randomica generadora de String

Debuggeando el Core de Magento, me encuentro con una función bastante interesante ( /app/code/core/Mage/Core/Helper/Data.php ), la cual nos permite generar una cadena randomica basado en un arreglo de caracteres.

<?php
function getRandomString($len, $chars=null)
    {
        if (is_null($chars)) {
            $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
        }
        mt_srand(10000000*(double)microtime());
        for ($i = 0, $str = '', $lc = strlen($chars)-1; $i < $len; $i++) {
            $str .= $chars[mt_rand(0, $lc)];
        }
        return $str;
    }
?>

Los parámetros son evidentes, el primero es la longitud de este String Randomico (length) y el segundo es opcional, es la cadena con la que sirve como base para la generación, en caso de ser nulo utiliza esta cadena abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 .

Ejemplo 1

<?php
echo getRandomString(10,'zarpele');
?>

Resultados en 3 distintas iteraciones:

elreaerzee
lerrreeeer
aepzpezlpe

Ejemplo 2
Ahora probamos sin el segundo parámetro…

<?php
echo getRandomString(10);
?>

Resultados en 3 distintas iteraciones:

qm42v4uxpF
nMqOQkCIX1
T40bFRUBvj

Salutes…


Puedes seguir cualquier respuesta a esta entrada mediante el canal RSS 2.0. Puedes dejar un comentario o enviar un trackback desde tu propio sitio.

Deja un comentario

XHTML: Puedes usar estas etiquetas: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="">

 
Follow Me Hazte Fan Subscribe