<?
substr(md5(rand(0,100000)),0,15)
?>这样么?不行啊。
能写个完整的么?
substr(md5(rand(0,100000)),0,15)
?>这样么?不行啊。
能写个完整的么?
解决方案 »
- 百度地图中,如何根据一个坐标点搜索数据库中附近多少距内的N个坐标点
- 用phpDOM loadXML出错,请教!
- 请问为什么对象是在页面加载完毕才销毁!
- 请PHP大虾来解释一下关于MYSQL连接的代码问题---新手们一定要来学习(好东西哦)
- 求用PHP写的正则表达式
- 求助!php连接数据库显示"?/214?/211..."
- 如何让tomcat 支持 php
- php一般查找方法
- 大家看看这个类里的方法函数是什么意思啊
- 在win2k+php4+mysql+IIS下开发的程序不能在redhat7.3+php+mysql+apache下运行....
- 一个简单的问题!!
- 活跃思路:php做小游戏思路和原理探究——拼图
echo substr(md5(rand(0,100000)),0,15);
?>
会重复吧.--
是啊,我也觉得,md5算法对固定的数字每次结果都是一样的吧?那即使用md5(rand(0,10000))也只有100001种结果吧?
<?php
function random_char($string)
{
$length = strlen($string);
$position = mt_rand(0, $length - 1);
return($string[$position]);
}
function random_string ($charset_string, $length)
{
$return_string = ""; // the empty string
for ($x = 0; $x < $length; $x++)
$return_string .= random_char($charset_string);
return($return_string);
}
mt_srand((double)microtime() * 1000000);
$charset = "abcdefghijklmnopqrstuvwxyz0123456789";//use random_string()
$mystr = random_string($charset,15);
echo $mystr . "<br>";
//use md5()
echo substr(md5(mt_rand(0,100000)),0,15);
?>
好像是这样,不过学习方法!!
*
* 作者:偶然
* 功能:生成四位随机数
* 时间:2004.2.1
*
*/
function rand_num()
{
global $authnum;
srand((double)microtime()*1000000);
while(($authnum=rand()%10000)<1000);
Return $authnum;
}我一直在用偶然写的这个东西
//如果你1秒中内插入了6000条记录,恭喜你报错1次
$title_id = md5(rand_num()+time());
substr(md5(uniqid(rand())),0,15);
呵呵,不错,就是包含字符种类太少。
$chars="23456789ABCDEFGHJKLMNPRSTWXY";
$string="";
for($i=0;$i<$len;$i++){
srand((double)microtime()*1000000);
$rand=rand(0,strlen($chars)-1);
$string.=substr($chars,$rand,1);
}
return strtoupper($string);
}
$s = '0123456789abcdefghijklmnopqrstuvwxyz';
preg_match_all('/./', $s, $r);
shuffle($r[0]);
return join('', array_slice($r[0], 15));
}
* 通过时间和随机数得到唯一的14位标识ID
*
* 取Unix时间戳,共10位 + 随机数4位 = 14位
*
* @author liuhb
* @since 1.1
* @copyright Bizsms Copyright 2005
* @since 2005年5月8日
* @access public
* @param NULL
* @return string
*/
function getSeqID()
{
// 取Unix时间戳,共10位
list($usec, $sec) = explode(" ", microtime());
$strsec = sprintf("%s", $sec); for ($i=0; $i<4; $i++)
{
$strsec = $strsec.rand(0, 9);
} return $strsec;
}
* 随机产生Handle序列
*
* @param
* @return handle
*/
function createID($len=14)
{
$handle = "";
$array = array(1,2,3,4,5,6,7,8,9,0,a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z);
//$array1 = array(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z); while (strlen($handle) < $len)
{
$i = rand(0, 61);
$handle .= $array[$i];
} return $handle;
}