Here is a sample function that generates random code,it can be used for generating encryption codes or passwords etc.
<?php
function gen_code($total_length = 8, $use_caps = true, $use_numeric = true, $use_specials = true) {
$capsall = array();
$nums = array();
$nums_specials = 0;
$reglength = $total_length;
$tws = array();
for ($ch = 97; $ch <= 122; $ch++) $chars[] = $ch; // create a-z
if ($use_caps) for ($ca = 65; $ca <= 90; $ca++) $capsall[] = $ca; // create A-Z
if ($use_numeric) for ($nu = 48; $nu <= 57; $nu++) $nums[] = $nu; // create 0-9
$all = array_merge($chars, $capsall, $nums);
if ($use_specials) {
$reglength = ceil($total_length*0.75);
$nums_specials = $total_length - $reglength;
if ($nums_specials > 5) $nums_specials = 5;
for ($si = 33; $si <= 47; $si++) $signs[] = $si;
$rs_keys = array_rand($signs, $nums_specials);
foreach ($rs_keys as $rs) {
$tws[] = chr($signs[$rs]);
}
}
$rand_keys = array_rand($all, $reglength);
foreach ($rand_keys as $rand) {
$tw[] = chr($all[$rand]);
}
$compl_str = array_merge($tw, $tws);
shuffle($compl_str);
return implode('', $compl_str);
}
echo gen_code(10);
?>
No comments:
Post a Comment