2012-05-09 3 views
-1

저는 2D 배열과 PHP를 사용하여 검색하는 방법을 궁금합니다. 내 배열 인 : 나는 사람들이 할 수 있기를 원하는 것은결합 된 2D 배열 값을 검색 하시겠습니까?

Array (
    [0] => Array (
     [Image] => 1.png 
     [Manufacturer] => Manu1 
     [Model] => Model1 
    ) 
    [1] => Array (
     [Image] => 2.png 
     [Manufacturer] => Manu2 
     [Model] => Model2 
    ) 
    [2] => Array ( 
     [Image] => 3.png 
     [Manufacturer] => Manu3 
     [Model] => Model3 
    ) 
) ] 

는 "좋아요"를 할 것입니다 제조업체 및 모델의 결합 된 값을 검색 할 수 있습니다. 즉, 누군가를 검색하는 경우 :

Ma = Would return all 
Mo = Would return all 
Manu3 = Would return Manu 3 Model3 
Manu2 Mo =Would return Manu 2 Mo'XXXX' 
Model1 = Would return Manu 1 Model 1 
+0

내가'png' 검색하면 무슨 일이 발생한다 ??? – shadyyx

+0

아마 제조사와 모델의 결합 된 가치를 검색하기 위해 말했기 때문에 아무런 결과가 없었습니다. – Jeroen

답변

1

이것은 제론에서 수리 코드 :

function searchArray($query, $array) { 
    $tmp = array(); 
    $subq = explode(' ', $query); 
    foreach ($array as $key => $val) { 
     foreach($subq as $q) { 
      if (strpos($val['Manufacturer'], $q) !== 0 || strpos($val['Model'], $q) !== 0) { 
       $tmp[$key] = $val; 
      } 
     } 
    } 
    return $tmp; 
} 

print_r($tmp); 
+0

나쁘다. 나는 틀린 질문을 읽었다; 이것은 실제로 완벽하게 작동합니다. – Jeroen

+0

아직 검색 쿼리가 'Manu3 Mo'인 경우 아무것도 찾지 못할 것입니다. 쿼리도 구문 분석해야합니다 ... OMG. – shadyyx

+0

기본적으로 자동차 배열입니다. Civic을 검색하면 Honda Civic이 반환됩니다. Honda를 검색하면 모든 Honda가 반환됩니다. 희망적으로 이것은 의미가 있습니까? 위의 코드가 여전히 작동합니까? 이미지는 검색 결과가 무엇이든간에 이미지를 반환하기위한 것입니다. – K20GH