이번에는 PHP에서 사용자 정의 길이의 임의 문자열을 생성하는 단계에 대해 자세히 설명하겠습니다. PHP에서 사용자 정의 길이의 임의 문자열을 생성할 때 주의 사항은 무엇입니까? 살펴보자. //随机生成字符串
function random($length) {
srand(date("s"));
$possible_charactors = "0123456789abcdefghijklmnopqrstuvwxyz";
$string = "";
while(strlen($string)<$length) {
$string .= substr($possible_charactors,(rand()%(strlen($possible_charactors))),1);
}
return($string);
}
예제 2, php는 n개의 비반복 난수 인스턴스를 생성합니다
투표 대상 작품은 25개이며, 한 작품당 하나씩, 한 투표에 16개를 선택해야 합니다. 한 번만 투표할 수 있습니다.
채우려면 1~25 사이의 반복되지 않는 난수 16개를 생성해야 합니다. 기능을 구체적으로 어떻게 디자인하나요? 난수를 배열에 저장한 다음, 배열에서 중복된 값을 제거하여 일정 개수의 반복되지 않는 난수를 생성합니다.
프로그램:
<?php /* * array unique_rand( int $min, int $max, int $num ) * 生成一定数量的不重复随机数 * $min 和 $max: 指定随机数的范围 * $num: 指定生成数量 */ www.jbxue.com function unique_rand($min, $max, $num) { $count = 0; $return = array(); while ($count < $num) { $return[] = mt_rand($min, $max); $return = array_flip(array_flip($return)); $count = count($return); } shuffle($return); return $return; } $arr = unique_rand(1, 25, 16); sort($arr); $result = ''; for($i=0; $i < count($arr);$i++) { $result .= $arr[$i].','; } $result = substr($result, 0, -1); echo $result; ?>
보조:
"flip 메소드"는 배열에서 중복된 값을 제거하는 데 사용되는데, array_flip()을 사용하여 배열의 키와 값을 두 번 교환하는 것입니다. 이는
array_unique
()를 사용하는 것보다 훨씬 빠릅니다. 배열을 반환하기 전에 먼저 shuffle()을 사용하여 배열에 새 키 이름을 할당하고 키 이름이 0-n의 연속 숫자인지 확인하세요. 이 단계를 수행하지 않으면 중복된 값을 삭제
할 때 키 이름이 연속되지 않아 순회에 문제가 발생할 수 있습니다. 이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 도서:
php ZIP 압축 클래스 예제 단계에 대한 자세한 설명PHP가 프로그램 실행 상태를 확인하는 단계에 대한 자세한 설명위 내용은 PHP에서 사용자 정의 길이의 임의 문자열을 생성하는 단계에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!