将带有数字和小写字符的字符串转换为带有数字,小写和大写字符的字符串

时间:2013-02-08 09:57:50

标签: php hash base

我有一个生成唯一ID的函数。输出格式仅包含数字和小写字符。问题是,这些id很长,因此不是非常用户友好。 我的问题是,是否有可能在包含大写字符的id中转换此id,使字符串更短,因为每个字符的值可以是62(10 + 2 * 26)而不是32(10 + 26) )?我正在用PHP编写这个函数

1 个答案:

答案 0 :(得分:0)

此函数可以为您提供长度为

的随机字符串
 function Random($length){//40-95--97-126
 $id='';
 for($i=0;$i<$length;$i++){  
   while(1) {  
     $id1=rand(48,122);
     if(($id1!=91)and($id1!=92)and($id1!=93)and($id1!=94)and($id1!=95)and($id1!=96)and($id1!=58)and($id1!=59)and($id1!=60)and($id1!=61)and($id1!=62)and($id1!=63)and($id1!=64)and($id1<123)and($id1>47)){
       break;
     }
   }
   $id.=chr($id1);
 }
 return($id);
}

进行测试

echo Random(10);