> 백엔드 개발 > PHP 튜토리얼 > PHP array_diff 적용

PHP array_diff 적용

WBOY
풀어 주다: 2016-07-28 08:27:15
원래의
1056명이 탐색했습니다.

정의 및 사용법:

array_diff() 함수는 두 배열의 차이 배열을 반환합니다. 이 배열에는 비교되는 배열에 있지만 다른 매개변수 배열에는 없는 모든 키가 포함되어 있습니다.

반환된 배열에서 키 이름은 변경되지 않은 상태로 유지됩니다.

구문

array_diff(<em>array1</em>,<em>array2</em>,<em>array3</em>...);
로그인 후 복사
参数 描述
array1 必需。与其他数组进行比较的第一个数组。
array2 必需。与第一个数组进行比较的数组。
array3 可选。与第一个数组进行比较的其他数组
팁 및 참고 사항

팁: 하나 이상의 어레이를 첫 번째 어레이와 비교할 수 있습니다.

반환값

返回值: 返回差集数组,该数组包括了所有在被比较的数组(array1)中,但是不在任何其他参数数组(array2array3 等等)中的键值。
PHP 版本: 4.0.1+

설명:

인터넷에서 하는 말인데 제가 평소에 사용하는 경우는 , 상대적으로 열악한 세트라는 것만 알고 크게 생각하지 않았는데 최근 프로젝트에서 라벨 처리에 문제가 발생하여 이전에 이런 방식으로 사용한 적이 없습니다. 나중에 이런 일이 다시 발생할 경우를 대비해 여기에 기록하겠습니다.

내 비즈니스 요구 사항: 각 고객은 단일 또는 여러 개의 태그를 가질 수 있으며 태그 저장소는 단일 또는 다중 레코드이므로 추가하는 것은 매우 간단합니다. 을 추가하거나 여러 레코드를 일괄 추가하기만 하면 됩니다. 그러나 수정 사항은 다릅니다. 즉, 일반인의 관점에서 이전 태그인 경우 최신 항목이 주요 항목입니다. 새 태그가 포함되어 있지 않으면 새 태그를 추가하고 이전 태그를 삭제해야 합니다. 그러나 또 다른 상황이 있습니다. 이전 태그 중 일부에 새 태그가 하나 이상 포함되어 있으면 문제는 다음과 같습니다. 이전 태그에 새 태그가 포함되지 않은 새 태그를 추가하면 이전 태그에 새 태그가 없는 것으로 추정됩니다. 예를 들어 설명하겠습니다.

예:

이전 태그: [A, B, C]

새 태그: [C, D, E]

분석은 다음과 같습니다. 다음은 다음과 같습니다.

1: 사실 우리의 목적은 다음과 같습니다. 새 태그를 기반으로 합니다. 새 태그에 D와 E를 추가하고 이전 태그에 A와 B를 추가해야 합니다. 삭제

위의 경우 처음에는 이전 태그를 모두 삭제하고 새 태그를 추가하는 것이 좋습니다. 그러나 잘 생각해보면 부적절할 것 같습니다. 삭제 개념이요? 데이터 테이블의 데이터를 삭제할 때 매우 조심스러운 것으로 알고 있습니다. 게다가 프로젝트에서 각 사용자가 여러 개의 태그를 가지고 있을 경우에도 삭제해야 합니까? 즉, 테이블 데이터를 삭제해도 데이터 파일의 크기가 줄어들지 않은 것을 알 수 있습니다. 삭제 작업 후 데이터 파일에 조각이 남아 있기 때문입니다. 따라서 이 방법은 권장되지 않습니다!

그렇다면 이를 순회하여 비교하거나 비교하지 않고 추가하거나 삭제하는 것이 좋습니다. 두 데이터를 모두 순회해야 하고 데이터를 하나씩 비교해야 합니다. 데이터가 적을수록 좋지만, 데이터가 많을수록 좋지 않습니다!

그래서 이번에 생각한 방법은 php 함수를 이용하는 것입니다. array-diff()

예:

1: array_diff (old, new) => [A, B] => 삭제 ( 상태를 비활성화 상태로 수정)

2: array_diff(new, old) => [D,E] => 추가

위의 방법으로 문제가 해결되었나요? 새로운 것 좋지 않나요......

 

위에서는 PHP array_diff의 응용 프로그램을 소개했으며 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿