친구들이 제목을 보면 함수를 사용하여 PHP 난수 구현하기라는 반응을 보일 것이라고 생각합니다. 그렇다면 PHP 난수를 구현하는 데는 어떤 함수가 있을까요? 그래서 오늘은 PHP에서 난수를 생성하는 방법에 대해 소개하겠습니다.
PHP를 사용하여 1-10 사이의 반복되지 않는 난수를 생성하는 방법은 무엇입니까?
1. 셔플 기능을 사용하여 PHP 난수를 생성합니다.
<?php $arr=range(1,10); shuffle($arr); foreach($arr as $values) { echo $values." "; } ?>
2, array_unique 함수를 사용하여 PHP 난수를 생성하세요.
<?php $arr=array(); while(count($arr)<10) { $arr[]=rand(1,10); $arr=array_unique($arr); } echo implode(" ",$arr); ?>
예 3, array_flip 함수를 사용하여 중복 값을 제거할 수 있는 PHP 난수를 생성합니다.
<?php $arr=array(); $count1=0; $count = 0; $return = array(); while ($count < 10) { $return[] = mt_rand(1, 10); $return = array_flip(array_flip($return)); $count = count($return); } //www.jb51.net foreach($return as $value) { echo $value." "; } echo "<br/>"; $arr=array_values($return);// 获得数组的值 foreach($arr as $key) echo $key." "; ?>
php 난수 생성 함수 예시
<?php function randpw($len=8,$format='ALL'){ $is_abc = $is_numer = 0; $password = $tmp =''; switch($format){ case 'ALL': $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; break; case 'CHAR': $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; break; case 'NUMBER': $chars='0123456789'; break; default : $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; break; } // www.jb51.net mt_srand((double)microtime()*1000000*getmypid()); while(strlen($password)<$len){ $tmp =substr($chars,(mt_rand()%strlen($chars)),1); if(($is_numer <> 1 && is_numeric($tmp) && $tmp > 0 )|| $format == 'CHAR'){ $is_numer = 1; } if(($is_abc <> 1 && preg_match('/[a-zA-Z]/',$tmp)) || $format == 'NUMBER'){ $is_abc = 1; } $password.= $tmp; } if($is_numer <> 1 || $is_abc <> 1 || empty($password) ){ $password = randpw($len,$format); } return $password; } for($i = 0 ; $i < 10; $i++){ echo randpw(8,'NUMBER'); echo "<br>"; }
요약:
php 난수를 생성하는 방법은 다양하고 각 방법마다 특성과 효과가 있으므로 우리 일상생활에서 개발하는 동안, 귀하의 비즈니스 요구에 따라 방법을 선택하기만 하면 됩니다!
관련 권장 사항:
php 난수 WeChat 빨간 봉투 난수 생성 알고리즘 PHP 버전
위 내용은 PHP에서 난수를 생성하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!