php源码分析之DZX1.5随机数函数random用法

yipeiwu_com7年前PHP代码库

本文实例讲述了php源码分析之DZX1.5随机数函数random用法。分享给大家供大家参考。具体如下:

<?php
/**
 * @param int $length: 随机数长度
 * @param int $numeric: 0或非0,其中0表示随机数由全数字组成,非0表示随机数由全字母组成
 * @return string: 返回生成的随机数
 */
function random($length, $numeric = 0) {
  $seed = base_convert(md5(microtime().$_SERVER['DOCUMENT_ROOT']), 16, $numeric ? 10 : 35);
  $seed = $numeric ? (str_replace('0', '', $seed).'012340567890') : ($seed.'zZ'.strtoupper($seed));
  $hash = '';
  $max = strlen($seed) - 1;
  for($i = 0; $i < $length; $i++) {
    $hash .= $seed{mt_rand(0, $max)};
  }
  return $hash;
}
echo random('15',1);
echo '<br />';
echo random('15');
/*End of php*/

运行结果如下:

228283270677112
SjqffsU76994qfS

希望本文所述对大家的php程序设计有所帮助。

相关文章

PHP递归遍历指定目录的文件并统计文件数量的方法

本文实例讲述了PHP递归遍历指定目录的文件并统计文件数量的方法。分享给大家供大家参考。具体实现方法如下: <?php //递归函数实现遍历指定文件下的目录与文件数量 f...

php 5.6版本中编写一个PHP扩展的简单示例

有时候在php本身没有满足需求的api时候,需要自己写相应的扩展,扩展写完之后进行编译,即可加入自己的开发环境中,扩展php的功能。 这里实现一个连接字符串和int型数的连接操作的简单扩...

采集邮箱的php代码(抓取网页中的邮箱地址)

复制代码 代码如下: <?php $url='//www.jb51.net'; //这个网页里绝对含有邮件地址。 $content=file_get_contents($url);...

php通过array_merge()函数合并关联和非关联数组的方法

本文实例讲述了php通过array_merge()函数合并关联和非关联数组的方法。分享给大家供大家参考。具体分析如下: array_merge()是一个用于合并数组的php函数,后一个数...

php实现ip白名单黑名单功能

这个是一个检测ip是否非法的php函数,适应于白名单,黑名单功能开发,主要场景应用于:api来源限制,访问限制等. 复制代码 代码如下: /**  * 安全IP检测,支持IP段...