>백엔드 개발 >PHP 문제 >PHP에서 동일한 배열을 탐색하는 방법

PHP에서 동일한 배열을 탐색하는 방법

王林
王林원래의
2023-05-07 13:35:07621검색

PHP에서 배열 순회는 매우 일반적인 작업입니다. 우리는 일반적으로 이 방법을 사용하여 배열의 요소를 찾거나, 배열에 대해 작업하거나, 배열의 모든 요소를 ​​출력하려고 합니다. 어떤 경우에는 다른 작업을 수행하기 위해 동일한 값을 가진 요소를 찾아야 합니다. 이 기사에서는 PHP에서 동일한 배열을 탐색하는 방법을 자세히 살펴보겠습니다.

먼저 PHP에서 배열을 순회하는 두 가지 방법을 살펴보겠습니다.

  1. foreach 루프

foreach 루프는 PHP에서 배열을 순회하는 가장 일반적인 방법입니다. 기본 구문 구조는 다음과 같습니다.

foreach (array_expression as $key => $value) {
  // code to be executed;
}
  • array_expression : 순회해야 하는 배열array_expression:需要遍历的数组
  • $key:当前元素的键
  • $value:当前元素的值

foreach循环将依次遍历数组中的每个元素,并将其键和值赋值给$key$value,然后执行相应的代码。

举一个简单的例子,我们有一个数组:

$arr = array(2, 4, 6, 8, 10);

使用foreach循环遍历这个数组并输出每个元素:

foreach ($arr as $value) {
  echo $value . "<br>";
}

输出如下:

2
4
6
8
10
  1. for循环

for循环也是PHP中遍历数组的一种常见方法,与通常的for循环相似。基本语法结构如下:

for ($i = 0; $i < count($array); $i++) {
  // code to be executed;
}
  • $array:需要遍历的数组
  • $i:当前元素的索引

for循环将使用count()函数计算数组中的元素数目,并将其存储在变量$i中,然后依次遍历数组中的每个元素。

举一个简单的例子,我们有一个与上面相同的数组:

$arr = array(2, 4, 6, 8, 10);

使用for循环遍历这个数组并输出每个元素:

for ($i = 0; $i < count($arr); $i++) {
  echo $arr[$i] . "<br>";
}

输出如下:

2
4
6
8
10

以上是PHP中遍历数组的基本方法,下面我们将介绍如何遍历出相同的数组。

  1. 使用array_count_values()函数

array_count_values()函数可以找出数组中相同值的元素。它的基本语法结构如下:

array array_count_values ( array $array )
  • $array
  • $key: 현재 요소의 키

$value: 값 현재 요소

foreach 루프는 배열을 순서대로 순회합니다. 요소의 각 요소에는 해당 키와 값이 $key$value에 할당됩니다. 해당 코드가 실행됩니다.

간단한 예를 들자면 배열이 있습니다.

$arr = array(1, 2, 3, 4, 3, 2, 1, 5);
foreach 루프를 사용하여 이 배열을 탐색하고 각 요소를 출력합니다.
    $newArr = array_count_values($arr);
    print_r($newArr);
  1. 출력은 다음과 같습니다.
  2. Array
    (
        [1] => 2
        [2] => 2
        [3] => 2
        [4] => 1
        [5] => 1
    )

for 루프

for 루프는 다음과 같습니다. 또한 PHP의 배열 탐색 일반적인 for 루프와 유사한 일반적인 방법입니다. 기본 구문 구조는 다음과 같습니다:

$arr = array(1, 2, 3, 4, 3, 2, 1, 5);

$array: 순회해야 하는 배열

$i: 현재 요소의 인덱스

🎜🎜 for 루프는 count를 사용합니다. () 함수는 배열의 요소 수를 계산하고 이를 $i 변수에 저장한 다음 배열의 각 요소를 반복합니다. 🎜🎜간단한 예로 위와 동일한 배열이 있습니다. 🎜
$sameArr = array();
foreach ($arr as $key1 => $value1) {
  foreach ($arr as $key2 => $value2) {
    if ($key1 < $key2 && $value1 == $value2) {
      $sameArr[] = $value1;
    }
  }
}
print_r($sameArr);
🎜for 루프를 사용하여 이 배열을 탐색하고 각 요소를 출력합니다. 🎜
Array
(
    [0] => 2
    [1] => 3
    [2] => 1
)
🎜출력은 다음과 같습니다. 🎜rrreee🎜위는 기본 방법입니다. PHP에서 배열을 순회하는 경우, 아래에서는 동일한 배열을 순회하는 방법을 소개합니다. 🎜🎜🎜array_count_values() 함수🎜🎜🎜array_count_values() 함수를 사용하여 배열에서 동일한 값을 가진 요소를 찾습니다. 기본 구문 구조는 다음과 같습니다: 🎜rrreee🎜🎜$array: 찾을 배열🎜🎜🎜이 함수는 원본에서 각 요소의 발생 횟수를 포함하는 새 배열을 반환합니다. 정렬. 간단한 예를 들자면 배열이 있습니다. 🎜rrreee🎜array_count_values() 함수를 사용하여 배열에서 동일한 요소를 찾습니다. 🎜rrreee🎜출력은 다음과 같습니다. 🎜rrreee🎜출력에서 볼 수 있듯이 새 배열에는 원래 배열의 각 요소가 포함됩니다. 요소의 발생 횟수입니다. 그 중 요소 1, 2, 3은 두 번 나타나고 요소 4와 5는 한 번만 나타납니다. 🎜🎜🎜foreach 루프 사용🎜🎜🎜배열의 동일한 요소를 반복하는 또 다른 방법은 foreach 루프를 사용하는 것입니다. 구체적인 아이디어는 중첩된 foreach 루프를 사용하는 것입니다. 배열 요소를 순회할 때마다 그 뒤에 있는 요소를 순회하여 해당 값이 동일한지 비교합니다. 간단한 예로 배열이 있습니다. 🎜rrreee🎜 foreach 루프를 사용하여 이 배열을 탐색하고 그 안의 동일한 요소를 찾습니다. 🎜rrreee🎜 출력은 다음과 같습니다. 🎜rrreee🎜 출력에서 ​​볼 수 있듯이 원래 배열의 동일한 요소가 요소 2, 3, 1에서 발견되었습니다. 실제로 이 방법은 큰 배열을 처리할 때 더 번거롭고 시간도 많이 걸립니다. array_count_values() 함수를 사용하는 것이 좋습니다. 🎜🎜위 내용은 PHP에서 동일한 배열을 순회하는 두 가지 방법입니다. 도움이 되길 바랍니다. 🎜

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

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