>  기사  >  백엔드 개발  >  PHP에서 임의의 문자열을 생성하는 방법

PHP에서 임의의 문자열을 생성하는 방법

autoload
autoload원래의
2021-03-17 15:14:454383검색

1. 주로 두 가지 함수를 사용합니다:

  • chr()

  • mt_rand()

2. 구문 형식:

mt_rand() code>Mersenne Twister 알고리즘은 임의의 정수를 반환합니다. mt_rand() 使用 Mersenne Twister 算法返回随机整数。

mt_rand(min,max)

如果没有提供可选参数 min 和 maxmt_rand() 返回 0 到 RAND_MAX 之间的伪随机数。例如想要 5 到 15(包括 5 和 15)之间的随机数,用 mt_rand(5, 15)。很多老的 libc 的随机数发生器具有一些不确定和未知的特性而且很慢。PHP 的 rand() 函数默认使用 libc 随机数发生器。mt_rand() 函数是非正式用来替换它的。该函数用了 Mersenne Twister 中已知的特性作为随机数发生器,它可以产生随机数值的平均速度比 libc 提供的 rand() 快四倍。

    chr()用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符。

chr(i)

返回值是当前整数对应的 ASCII

<?php
  function getString($length = 4)
  {
    //从ASCII码中获取
    $captcha = &#39;&#39;;

    //随机取:大写、小写、数字
   for($i = 0;$i < $length; $i++){
     //随机确定是字母还是数字
     switch(mt_rand(1,3)){
         case 1:                //数字:49-57分别代表1-9
             $captcha .= chr(mt_rand(49,57));   
             break;
         case 2:                //小写字母:a-z
             $captcha .= chr(mt_rand(65,90));
             break;
         case 3:                //大写字母:A-Z
             $captcha .= chr(mt_rand(97,122));
             break;
      }
    }
    //返回
   return $captcha; 
   }
   
  echo getString(5);
?>

선택 매개변수 min max가 제공되지 않은 경우 code>, <code>mt_rand()는 0과 RAND_MAX 사이의 의사 난수를 반환합니다. 예를 들어 5에서 15(포함) 사이의 임의의 숫자를 원하는 경우 mt_rand(5, 15)를 사용하세요. 많은 오래된 libc 난수 생성기에는 불확실하고 알려지지 않은 속성이 있으며 속도가 느립니다. PHP의 rand() 함수는 기본적으로 libc 난수 생성기를 사용합니다. 이를 대체하기 위해 mt_rand() 함수가 비공식적으로 사용됩니다. 이 함수는 Mersenne Twister의 알려진 기능을 난수 생성기로 사용합니다. 이 기능은 libc에서 제공하는 <code> rand()보다 평균적으로 더 빠르게 난수 값을 생성할 수 있습니다. code> 4배 더 빠릅니다.

 chr()범위(256) 범위(즉, 0~255) 내의 정수를 매개변수로 사용하고 해당 문자를 반환합니다.

rrreee반환 값은 현재 정수에 해당하는 ASCII 문자입니다. 3 위의 두 함수를 사용하여 임의의 문자열을 생성합니다.

🎜rrreee🎜권장: 🎜php 비디오 튜토리얼🎜 🎜php 튜토리얼🎜🎜

위 내용은 PHP에서 임의의 문자열을 생성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.