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

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

PHPz
PHPz원래의
2023-04-26 10:21:061163검색

PHP에는 배열을 무작위로 생성하는 방법이 많이 있는데, 그 중 array_rand() 함수를 사용하는 것이 가장 간단한 방법 중 하나일 수 있습니다. 다음은 array_rand() 함수의 사용법과 배열을 무작위로 생성하는 다른 방법을 자세히 소개합니다.

1. array_rand() 함수 사용

array_rand() 함수는 배열에서 하나 이상의 임의의 키 이름을 반환할 수 있습니다. 따라서 먼저 배열을 생성한 다음 array_rand() 함수를 사용하여 배열에서 하나 이상의 키 이름을 무작위로 반환하고 이를 사용하여 새 배열을 생성해야 합니다. 샘플 코드는 다음과 같습니다.

<?php
$my_array = array("a" => "apple", "b" => "banana", "c" => "cherry", "d" => "durian");
$random_keys = array_rand($my_array, 2); // 随机返回2个键名
$random_array = array();
foreach ($random_keys as $key) {
    $random_array[$key] = $my_array[$key];
}
print_r($random_array);
?>

위 코드는 먼저 4개의 요소를 포함하는 연관 배열 $my_array를 만든 다음 array_rand() 함수를 사용하여 2개의 임의의 키 이름을 반환합니다. 그런 다음 임의의 키 이름을 순회하여 해당 요소가 새 연관 배열 $random_array에 복사됩니다. 위 코드를 실행하면 다음과 같은 결과가 나올 수 있습니다.

Array
(
    [d] => durian
    [a] => apple
)

2. shuffle() 함수와 array_slice() 함수를 사용하세요.

shuffle() 함수는 배열의 요소를 무작위로 섞을 수 있고 array_slice() 함수는 다음을 수행할 수 있습니다. 요소의 배열 부분을 반환합니다. 따라서 먼저 shuffle() 함수를 사용하여 원래 배열을 뒤섞은 다음 array_slice() 함수를 사용하여 요소의 일부를 반환함으로써 무작위로 생성된 배열을 얻을 수 있습니다. 샘플 코드는 다음과 같습니다.

<?php
$my_array = array("apple", "banana", "cherry", "durian");
shuffle($my_array); // 打乱原数组的顺序
$random_array = array_slice($my_array, 0, 2); // 返回前2个元素
print_r($random_array);
?>

위 코드는 먼저 4개의 요소를 포함하는 인덱스 배열 $my_array를 만든 다음 shuffle() 함수를 사용하여 순서를 섞습니다. 마지막으로 array_slice() 함수를 사용하여 처음 2개의 요소를 반환하고 무작위로 생성된 인덱스 배열 $random_array를 얻습니다. 위 코드를 실행하면 다음과 같은 출력을 얻을 수 있습니다.

Array
(
    [0] => cherry
    [1] => apple
)

3. range() 함수와 shuffle() 함수를 사용하세요.

range() 함수는 정수 또는 문자의 연속적인 기간을 생성할 수 있으며 shuffle() 함수는 의 배열 요소를 무작위로 뒤섞을 수 있습니다. 따라서 먼저 range() 함수를 사용하여 정수 또는 문자의 연속 배열을 생성한 다음 shuffle() 함수를 사용하여 순서를 혼란시키고 무작위로 생성된 배열을 얻을 수 있습니다. 샘플 코드는 다음과 같습니다.

<?php
$my_array = range(1, 10); // 生成1到10这10个连续整数
shuffle($my_array); // 打乱它们的顺序
$random_array = array_slice($my_array, 0, 3); // 返回前3个元素
print_r($random_array);
?>

위 코드는 10개의 연속된 정수를 포함하는 배열 $my_array를 생성한 다음 순서를 섞은 다음 처음 3개의 요소를 반환하여 무작위로 생성된 인덱스 배열 $random_array를 얻습니다. 위 코드를 실행하면 다음과 같은 출력을 얻을 수 있습니다.

Array
(
    [0] => 7
    [1] => 5
    [2] => 1
)

요약:

위의 세 가지 방법을 사용하여 배열을 무작위로 생성할 수 있으며, 다양한 시나리오에 다른 방법이 적합합니다. array_rand() 함수는 연관 배열에서 요소를 무작위로 선택하는 데 적합하고, shuffle() 함수는 기존 배열의 순서를 섞는 데 적합하며, range() 함수는 연속된 정수 집합을 무작위로 생성하는 데 적합합니다. 캐릭터 상황. 구체적인 상황에 따라 다양한 방법을 선택해야 합니다.

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

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