PHP에서 임의의 배열 항목 가져오기

Subodh Poudel 2023년6월20일
  1. array_rand() 함수를 사용하여 PHP에서 임의 배열 항목 가져오기
  2. mt_rand() 함수를 사용하여 PHP에서 임의 배열 항목 가져오기
  3. shuffle() 함수를 사용하여 PHP에서 임의 배열 항목 가져오기
PHP에서 임의의 배열 항목 가져오기

이 튜토리얼에서는 PHP의 배열에서 임의의 항목을 가져오는 방법을 소개합니다.

array_rand() 함수를 사용하여 PHP에서 임의 배열 항목 가져오기

array_rand() 함수를 사용하여 PHP의 배열에서 임의의 항목을 가져올 수 있습니다. 무작위화 알고리즘에 Mersenne Twister 난수 생성기를 사용합니다.

이 함수는 숫자 배열과 연관 배열 모두에 대해 작동합니다. array_rand() 함수는 배열에서 하나 이상의 임의의 키를 제공합니다.

함수를 더 잘 이해하기 위해 구문을 살펴보겠습니다.

array_rand($array, $num)

함수의 첫 번째 매개변수로 배열을 지정할 수 있습니다. 임의 항목은 배열에서 가져옵니다.

$num 매개변수는 반환할 임의 값의 수입니다. $num 매개변수의 기본값은 1입니다.

1보다 큰 값을 지정하면 함수는 배열의 여러 임의 키를 반환합니다. 결과적으로 array_rand() 함수는 배열, 문자열 또는 정수로 값을 반환할 수 있습니다.

입력 배열이 문자열을 키로 포함하는 연관 배열인 경우 문자열 값을 반환합니다. 숫자 인덱스 배열의 경우 반환 값은 정수입니다.

배열에서 임의의 요소를 찾기 위해 array_rand() 함수를 최대한 활용할 수 있습니다. 이 함수는 배열에서 임의의 키를 반환하므로 키를 인덱스로 사용하여 임의의 요소를 찾을 수 있습니다.

예를 들어 $array$age라는 두 개의 배열 변수를 만듭니다. $planets 변수에 인덱스 배열을 만들고 $age 변수에 연관 배열을 만듭니다.

다음으로 커스텀 함수 find_random_item($array)를 작성합니다. 함수 내에서 $array를 매개변수로 사용하여 array_rand() 함수를 사용하십시오.

함수를 $rand_key 변수에 할당합니다. 그런 다음 $array에서 $rand_key 변수를 사용하고 임의의 요소를 표시합니다.

함수 본문을 닫은 후 배열 $planets를 사용하여 find_random_item() 함수를 한 번 호출하고 $age 배열을 인수로 사용하여 다시 한 번 호출합니다.

이것은 PHP의 array_rand() 함수를 사용하여 배열에서 임의의 요소를 찾는 방법입니다.

예제 코드:

<?php
$planets = array("Mercury", "Venus", "Earth", "Mars", "Jupiter");
$age = array("Paul"=>"35", "Bob"=>"37", "Jack"=>"43");

function find_random_item($array){
 $rand_key= array_rand($array);
 $rand_element = $array[$rand_key];
 echo $rand_element."<br>";
}

find_random_item($planets);
find_random_item($age);

출력:

Mars
37

mt_rand() 함수를 사용하여 PHP에서 임의 배열 항목 가져오기

mt_rand() 함수를 사용하여 임의의 배열 항목을 가져올 수도 있습니다. 함수의 이름은 Mersenne Twister 난수 생성기에서 파생됩니다.

이 함수는 임의의 정수를 반환합니다. 임의의 정수를 인덱스로 사용하여 임의의 배열 요소를 얻을 수 있습니다.

함수에서 매개변수로 반환할 난수의 범위를 지정해야 합니다. mt_rand() 함수의 구문을 살펴보겠습니다.

mt_rand($min, $max)

여기서 $min은 생성할 수 있는 최소값이고 $max는 최대값입니다. 예를 들어 mt_rand(10,20) 함수의 경우 난수는 10~20이 될 수 있습니다.

첫 번째 단계는 배열에 대한 임의 키를 생성하는 것입니다. $min 옵션에 대해 0을 선택하고 $max 옵션에 대해 배열 길이보다 1 작은 숫자를 선택할 수 있습니다.

결과적으로 배열에 대한 임의의 키가 생성됩니다. count() 함수를 사용하여 배열의 길이를 생성할 수 있습니다.

임의의 키를 찾은 후 임의의 요소를 찾을 수 있습니다.

예를 들어 $countries 변수에 인덱스 배열을 만듭니다. 다음으로 mt_rand() 함수를 사용합니다. 여기서 0은 첫 번째 매개변수이고 count($countries)-1은 두 번째 매개변수입니다.

$rand_key라는 변수에 임의의 키를 저장합니다. 다음으로 $rand_key$countries 배열의 인덱스로 사용하여 배열에서 임의의 요소를 생성합니다.

무작위 요소 생성을 위해 인덱스 배열에 대해서만 mt_rand() 함수를 사용할 수 있습니다.

예제 코드:

$countries = array("Malaysia", "Vietnam", "Ecuador", "Malta", "Indonesia");

$rand_key = mt_rand(0, count($countries) - 1);
$rand_element = $countries[$rand_key];
echo $rand_element;

출력:

Ecuador

shuffle() 함수를 사용하여 PHP에서 임의 배열 항목 가져오기

무작위 배열 요소를 얻는 가장 간단한 방법 중 하나는 shuffle() 함수입니다. 이 함수는 배열을 매개변수로 사용하고 배열의 요소 순서를 무작위로 섞습니다.

이 함수는 부울 값을 반환합니다. 결과적으로 새로운 배열이 형성됩니다.

그런 다음 배열에서 임의의 항목을 얻기 위해 하나의 요소를 선택할 수 있습니다.

예를 들어 $countries 변수에 배열을 만듭니다. $countries 배열을 $shuffle 함수 매개변수로 사용합니다.

다음으로 echo 문을 사용하여 $countries 배열의 0번째 인덱스를 선택합니다. 결과적으로 임의의 배열이 선택됩니다.

인덱스 배열과 연관 배열 모두에 이 방법을 사용할 수 있습니다.

예제 코드:

$countries = array("Malaysia", "Vietnam", "Ecuador", "Malta", "Indonesia");
shuffle($countries);
echo $countries[0];

출력:

Malta
Subodh Poudel avatar Subodh Poudel avatar

Subodh is a proactive software engineer, specialized in fintech industry and a writer who loves to express his software development learnings and set of skills through blogs and articles.

LinkedIn

관련 문장 - PHP Array