2012-08-10 3 views
2

하나를 작동하지 배열에 값을 검색하면내 배열 값의

$all_data_array = Array 
(
    [0] => 'General Information' 
    [1] => 'Brand' 
    [2] => '<p><div style="bolor:#000000;"><li>Product Details</li></div></p>' 
) 

가 포함되어 있습니다.

그리고 array 값에 "Product Details"라는 텍스트가 있고, 일부 html 데이터를 감싸는 배열의 값의 키를 검색하려고합니다. 다음 코드를 작성했지만 작동하지 않습니다. 누군가 도울 수 있습니까?

<?php echo $new_key = array_search('Product Details', $all_data_array); ?> 
+0

'$ all_data_array' 배열이 어떻게 생겼는지 보여줄 수 있습니까? – Vins

답변

2

array_search 문자열 값이 정확히 같아야합니다.

사례에 루프를 사용할 수 있습니다.

foreach ($all_data_array as $key => $value) { 
    if (strpos($value, 'Product Details') !== false) { 
    $new_key = $key; 
    break; 
    } 
} 
1

array_filter 검색을 수행 할 사용자 지정 함수를 지정할 수 있습니다. 귀하의 경우에는 검색 문자열이 존재하는지 확인하기 위해 strpos()을 사용하는 간단한 함수가 필요합니다.

0

array_search는 정확한 일치를 검색, 배열 $ all_data_array의 세 번째 요소는 떨어져 "제품 정보"에서 다른 문자 (여기에 html 태그)를 가지고;