>백엔드 개발 >PHP 문제 >PHP에서 배열을 순회하여 다른 숫자를 얻는 방법

PHP에서 배열을 순회하여 다른 숫자를 얻는 방법

PHPz
PHPz원래의
2023-04-27 09:03:57500검색

PHP 언어의 점진적인 발전으로 배열 작업은 일상 업무에서 없어서는 안 될 부분이 되었습니다. PHP는 for, foreach 루프 등과 같이 배열을 탐색하기 위한 다양한 방법을 제공하지만 일부 개발자는 배열에 있는 다양한 항목의 수를 계산해야 할 때 어려움을 겪을 수 있습니다. 이 기사에서는 배열을 순회하여 다양한 숫자를 얻는 여러 가지 방법을 소개합니다.

  1. for 루프를 사용하여 탐색

in_array 함수와 함께 for 루프를 사용하여 배열의 다양한 항목 수를 가져옵니다. 구체적인 구현 방법은 다음과 같습니다.

$test_array = array("foo", "foo", "bar", "bar", "jim", "jim", "jam");
$count_array = array(); // 初始化一个存储不同项数量的数组

for ($i=0; $i<count($test_array); $i++) {
    if (!in_array($test_array[$i], $count_array)) { // 如果当前项不在count_array中
        array_push($count_array, $test_array[$i]); // 将当前项加入count_array中
    }
}
echo count($count_array); // 输出不同项的数量

위는 구현 방법이지만 for 루프를 사용할 경우 배열의 길이를 고려해야 합니다. 배열의 수가 많은 경우 이 방법을 사용하면 불필요한 시간이 발생할 수 있으며, 자원 소비.

  1. foreach 루프를 사용하여 순회

foreach 루프를 통해 배열을 순회하면 다양한 항목 수를 계산하는 작업을 보다 간결하고 명확하게 구현할 수 있습니다. 구체적인 구현 방법은 다음과 같습니다.

$test_array = array("foo", "foo", "bar", "bar", "jim", "jim", "jam");
$count_array = array(); // 初始化一个存储不同项数量的数组

foreach ($test_array as $value) {
    if (!in_array($value, $count_array)) { // 如果当前项不在count_array中
        array_push($count_array, $value); // 将当前项加入count_array中
    }
}
echo count($count_array); // 输出不同项的数量

for 루프 방법을 사용하는 것에 비해 foreach 루프를 사용하면 코드가 덜 필요하고 가독성이 높으며 상대적으로 효율적입니다.

  1. array_unique 함수를 사용하세요

중복된 항목이 포함되지 않은 배열을 얻으려면 array_unique 함수를 사용하세요. 배열의 길이는 원래 배열에 있는 다양한 항목의 수입니다. 구체적인 구현 방법은 다음과 같습니다.

$test_array = array("foo", "foo", "bar", "bar", "jim", "jim", "jam");
$unique_array = array_unique($test_array);
echo count($unique_array);

위의 두 가지 방법에 비해 array_unique 함수를 사용하는 코드의 양이 더 간단하고 명확하며, 처리 속도도 더 효율적입니다.

요약하자면, PHP는 배열을 순회하여 다양한 항목 수를 얻는 다양한 방법을 제공합니다. for 루프 방식을 사용할 경우 배열 길이에 주의해야 합니다. 배열 수가 많은 경우 추가 리소스 소모가 발생할 수 있습니다. 이 작업은 foreach 루프 메서드를 사용하여 보다 간결하고 명확하게 구현할 수 있습니다. array_unique 함수를 사용하는 것은 가장 효율적이면서도 가장 간단한 방법 중 하나입니다. 독자는 다양한 요구에 따라 자신에게 적합한 방법을 선택할 수 있습니다.

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

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