>  기사  >  백엔드 개발  >  PHP는 양방향 인덱스 쿼리를 구현하기 위해 어떤 데이터 구조를 가지고 있습니까?

PHP는 양방향 인덱스 쿼리를 구현하기 위해 어떤 데이터 구조를 가지고 있습니까?

WBOY
WBOY원래의
2016-08-10 08:48:52939검색

어떻게 표현해야 할지 모르겠습니다. 간단히 말해서 요구 사항이 C#의 linq와 다소 비슷합니다.
다음과 같은 배열이 있으면

<code>$test = [
    'a'=>'a1',
    'b'=>'a1',
    'c'=>'c1',
]
</code>

이제 $test['a']를 통해 'a1'을 쿼리할 수 있지만 'a1'을 통해 'a'와 'b' 두 요소도 쿼리하고 싶습니다. 방법을 문의하세요. 이것을 PHP로 구현 하시겠습니까?

보충: 어떤 사람들은 foreach를 사용하여 구현한다고 하지만 내 배열은 나중에 수천 또는 수만 개로 매우 커질 수 있으므로 foreach를 사용하는 것은 확실히 효율적이지 않습니다.

기존 솔루션으로는 각 배열 요소의 키 값이 다른 상황, 즉 일대일 매핑 상황만 해결할 수 있습니다. 첫 번째는 array_search, 두 번째는 array_flip, 그 다음은 전통적인 $test['a1'] 찾기.

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