Hm.. Así?
Código PHP:
function RandomString($length=8,$n=TRUE)
{
$source = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
if($n==1) $source .= '1234567890';
if($length>0){
$rstr = "";
$source = str_split($source,1);
for($i=1; $i<=$length; $i++){
mt_srand((double)microtime() * 1000000);
$num = mt_rand(1,count($source));
if ($i == round($length / 2)) {
$rstr .= '-';
}
$rstr .= $source[$num-1]
}
}
return $rstr;
}
PD: Te recomiendo identar el código que así es algo inentendible