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

yipeiwu_com5年前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中数组和链表的区别 从逻辑结构来看 1.、数组必须事先定义固定的长度(元素个数),不能适应数据动态地增减的情况。当数据增加时,可能超出原先定义的元素个数;当数据减少时,造成内存浪费...

thinkphp实现把数据库中的列的值存到下拉框中的方法

1. 先去数据库中查值,查询整个数据表,结果为二维数组。 $project = M("project"); $cell = $project->where(array('s...

PHP使用GD库输出汉字的方法【测试可用】

PHP使用GD库输出汉字的方法【测试可用】

本文实例讲述了PHP使用GD库输出汉字的方法。分享给大家供大家参考,具体如下: 一、原理 PHP中的GD库支持中文,但是必须要以UTF-8格式的参数来进行传递。下面先说一下汉字的UTF-...

php生成验证码函数

php生成验证码函数

php生成验证码的函数,实用靠谱。先上下生成的验证码的效果图(这里生成的是全数字的验证码的示例效果): 下面是php生成验证码的源码: <?php sessio...

PHP7实现和CryptoJS的AES加密方式互通示例【AES-128-ECB加密】

本文实例讲述了PHP7实现和CryptoJS的AES加密方式互通。分享给大家供大家参考,具体如下: PHP类: class AES { /** * * @param...