✅ 1. PHP array_diff 함수 설명
array_diff(array $array, array ...$arrays): array
- 첫 번째 배열을 기준으로 하여, 나머지 배열들에 존재하지 않는 값들만 반환합니다.
- 비교는 값(value)만 비교, 키(key)는 비교하지 않습니다.
- 반환되는 배열은 원본 배열의 키를 유지합니다.
✅ 2. array_diff 함수 샘플 코드
<?php
$a = array("apple", "banana", "orange", "kiwi");
$b = array("banana", "orange");
$result = array_diff($a, $b);
print_r($result);
?>
✅ 3. 샘플 코드 이용 방법 및 출력 결과
✔ 이용 방법
위 코드에서 $a 배열에서 $b 배열에 없는 값을 찾아 반환합니다.
✔ 출력 결과
Array ( [0] => apple [3] => kiwi )
즉, "apple" 과 "kiwi" 는 $b 배열에 없으므로 결과 배열에 포함됩니다.
✅ 4. VB.NET에서 유사한 기능
VB.NET에는 PHP의 array_diff와 동일한 내장 함수는 없지만,
LINQ Except 기능으로 동일하게 구현할 수 있습니다.
VB.NET 함수 설명 (Except)
- Enumerable.Except(first, second)
- 첫 번째 컬렉션에서 두 번째 컬렉션에 없는 요소만 반환합니다.
VB.NET 샘플 코드
Imports System.Linq
Module Module1
Sub Main()
Dim a = {"apple", "banana", "orange", "kiwi"}
Dim b = {"banana", "orange"}
Dim result = a.Except(b)
For Each item In result
Console.WriteLine(item)
Next
End Sub
End Module
✔ 결과 출력
apple kiwi
✅ 5. C#에서 유사한 기능
C#도 VB.NET과 동일하게 LINQ Except() 사용
C# 함수 설명
- Enumerable.Except(first, second)
- 첫 번째 리스트에서 두 번째 리스트에 없는 값을 반환합니다.
C# 샘플 코드
using System;
using System.Linq;
class Program
{
static void Main()
{
var a = new[] { "apple", "banana", "orange", "kiwi" };
var b = new[] { "banana", "orange" };
var result = a.Except(b);
foreach (var item in result)
{
Console.WriteLine(item);
}
}
}
✔ 출력 결과
apple kiwi
✅ 6. Python에서 유사한 기능
Python에서는 set 차집합(difference) 기능을 사용합니다.
Python 함수 설명
- setA.difference(setB)
- 또는 setA - setB
- A에서 B에 없는 요소만 반환합니다.
Python 샘플 코드
a = ["apple", "banana", "orange", "kiwi"]
b = ["banana", "orange"]
result = list(set(a) - set(b))
print(result)
✔ 출력 결과
['apple', 'kiwi']
※ set은 순서를 보장하지 않으므로 필요하면 정렬 가능
sorted(list(set(a) - set(b)))
✅ 7. JavaScript에서 유사한 기능
JavaScript에는 내장 diff 함수가 없지만,
filter() 와 includes() 를 이용하여 구현할 수 있습니다.
JavaScript 유사 기능 설명
- array1.filter(x => !array2.includes(x))
- array1에서 array2에 없는 요소만 반환
JavaScript 샘플 코드
const a = ["apple", "banana", "orange", "kiwi"];
const b = ["banana", "orange"];
const result = a.filter(item => !b.includes(item));
console.log(result);
✔ 출력 결과
["apple", "kiwi"]
✅ 전체 정리
언어함수 / 기능역할
| PHP | array_diff | 배열 차집합(값 비교) |
| VB.NET | Enumerable.Except() | 컬렉션 차집합 |
| C# | Enumerable.Except() | 컬렉션 차집합 |
| Python | set.difference() | 집합 차집합 |
| JavaScript | filter + includes | 배열 차집합 구현 |
'개발.이산이다' 카테고리의 다른 글
| array_udiff (0) | 2025.12.17 |
|---|---|
| array_intersect (0) | 2025.12.16 |
| natcasesort (0) | 2025.12.14 |
| prev (0) | 2025.12.13 |
| in_array (0) | 2025.12.12 |