이전 글에서는 배열 요소를 무작위로 섞는 방법을 소개했습니다. 관심이 있으시면 클릭하여 → "PHP 배열 학습: 무작위 정렬, 배열 요소 섞기"를 읽어보세요. 다음 글에서는 무작위성에 대해 살펴보고 하나 이상의 배열 요소를 무작위로 얻는 방법을 소개하겠습니다.
사실 PHP에서 제공하는 배열 함수 array_rand()가 있습니다. 그 기능은 무작위로 얻는 것이지만 하나 이상의 배열 키 이름만 얻을 수 있고 키 값을 얻을 수는 없습니다.
array_rand()는 배열 키 값을 직접 얻을 수 없지만 array_rand()에서 얻은 무작위 키 이름을 사용하고 몇 줄의 코드를 추가하여 요소(키 이름과 키 값 모두)를 무작위로 얻습니다.
구현 코드를 살펴보겠습니다.
<?php $arr=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $rand = array_rand($arr); $arr2[$rand]=$arr[$rand]; var_dump($arr2); ?>
출력 결과:
array_rand($arr)
문이 무작위로 하나의 요소만 가져오는 것을 볼 수 있습니다. 무작위로만 가능합니다. 키 이름을 얻을 수 있는데, 여러 키 이름을 얻는 방법은 무엇입니까? array_rand($arr)
语句只能随机获取一个键名,那么如何获取多个键名呢?
只需要给array_rand()函数设置两个参数,第一个参数$array
指定数组,而第二个参数$number
指定要获取的键名的数目。
<?php $arr=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); $rand = array_rand($arr,3); foreach($rand as $val){ $arr2[$val]=$arr[$val]; } var_dump($arr2); ?>
当array_rand()函数获取到了多个键名,那么就会返回一个包含随机键名的数组。
这样我们就可以使用foreach语句来遍历$rands
数组,不断的根据$rands
数组中的键名从$arrs
数组中取值,并赋值给新数组$arr2
即可。我们来看看输出结果:
刷新一下,结果就改变了:
注:array_rand()如果获取的数量($number
)超过了 $array
$array
는 배열을 지정하고, 두 번째 매개변수 $number
는 키 이름을 지정합니다. 번호를 얻습니다. rrreee array_rand() 함수가 여러 키 이름을 획득하면 임의의 키 이름이 포함된 배열을 반환합니다.
이런 방식으로 foreach 문을 사용하여 $rands
배열을 순회하고 $arrs 배열에서 데이터를 지속적으로 추출할 수 있습니다. code>$rands 배열에서 값을 가져와 새 배열 $arr2
에 할당합니다. 출력을 살펴보겠습니다.
$number
)로 얻은 숫자가 $array
의 길이를 초과하면 E_WARNING 오류가 발생하고 NULL을 반환합니다. 🎜🎜🎜🎜🎜그게 다입니다. 더 알고 싶다면 여기를 클릭하세요. → →🎜php 동영상 튜토리얼🎜🎜🎜마지막으로 PHP 배열에 대한 무료 동영상 튜토리얼을 추천합니다: 🎜PHP 함수 배열 배열 함수 동영상 설명🎜, 와서 배워보세요! 🎜위 내용은 여러 요소를 무작위로 얻는 PHP 배열 학습의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!