이전 글에서는 배열 요소를 내림차순으로 정렬하는 방법을 소개했습니다. 관심 있는 분은 링크를 클릭해 → " PHP 배열 학습 팁: 배열 함수를 사용하여 내림차순으로 정렬하세요! 》. 그렇다면 특정 규칙에 따라 오름차순이나 내림차순으로 정렬하고 싶지 않고 원래 순서를 파괴하고 배열 요소를 방해하고 싶은 이유는 무엇입니까?
오늘은 PHP 배열을 무작위로 정렬하는 방법과 배열 요소를 무작위로 섞는 방법을 알아 보겠습니다.
그럼 어떻게 작동하나요? 실제로 내장 함수 shuffle()을 직접 사용하면 매우 간단합니다. shuffle() 함수는 배열의 요소를 무작위 순서로 재배열합니다.
이제 코드 예제를 사용하여 shuffle() 함수가 배열을 무작위로 섞는 방법을 살펴보겠습니다.
<?php header("Content-type:text/html;charset=utf-8"); $arr1 = array(10, 23, 5, 12, 84, 16); shuffle($arr1); var_dump($arr1); $arr2= array("香蕉","苹果","梨子","橙子","橘子","榴莲"); shuffle($arr2); var_dump($arr2); ?>
출력 결과:
새로 고침 및 결과 변경:
설명: shuffle() 함수는 배열을 무작위로 섞을 뿐만 아니라 배열의 원래 키도 삭제합니다. 이름을 지정하고 새 숫자 키 이름을 할당합니다(즉, 인덱스 관계가 유지되지 않습니다).
무작위로 섞인 키 이름 배열을 유지하려면 array_keys() 함수를 사용할 수 있습니다.
아이디어: array_keys() 함수를 사용하여 원래 배열 $arr의 모든 키 이름을 가져오면 배열의 모든 키 이름을 포함하는 새 배열 $key가 반환됩니다. 그런 다음 shuffle() 함수를 사용하여 $key 배열을 무작위로 섞습니다. 마지막으로 foreach 루프를 사용하여 $key 배열을 순회하고 $key 배열의 값을 기반으로 $arr 배열의 키-값 쌍을 얻은 다음 해당 값을 $arr2 배열에 하나씩 할당합니다.
구현 코드를 살펴보겠습니다.
<?php header("Content-type:text/html;charset=utf-8"); $arr =array("香蕉","苹果","梨子","橙子","橘子","榴莲"); var_dump($arr); if (!empty($arr)) { $key =array_keys($arr); shuffle($key); foreach ($key as $value) { $arr2[$value] =$arr[$value]; } $arr =$arr2; } echo "随机打乱数组:"; var_dump($arr); ?>
출력 결과:
그렇습니다. 더 알고 싶다면 여기를 클릭하세요. → →php 동영상 튜토리얼
마지막으로 PHP 배열에 대한 무료 동영상 튜토리얼을 추천합니다: PHP 함수 배열 배열 함수 동영상 설명, 와서 배워보세요!
위 내용은 PHP 배열 학습의 무작위 정렬, 배열 요소 중단의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!