2014-06-09 5 views
-1

먼저 먼저 도움을 주셔서 감사드립니다.중복 된 항목을 제거하고 마지막 항목을 keeey

array(18) { 
    ["department"]=> 
    string(14) "Administration" 
    ["employee"]=> 
    string(13) "Joe Smith" 
    ["times"]=> 
    string(6) "7:00am" 
    ["timee"]=> 
    string(6) "7:00pm" 
    ["regular"]=> 
    int(8) 
    ["overtime"]=> 
    int(4) 
    ["d_overtime"]=> 
    int(4) 
    ["total"]=> 
    int(12) 
    ["cost"]=> 
    int(28) 
    ["date"]=> 
    string(12) "May 27, 2014" 
    ["curdp"]=> 
    int(28) 
    ["mtddp"]=> 
    int(28) 
    ["rev"]=> 
    string(10) "35073.8900" 
    ["dp2rev"]=> 
    string(5) "0.08%" 
    ["mtd2rev2013"]=> 
    string(4) "-na-" 
    ["mtdpay2rev"]=> 
    string(5) "0.08%" 
    ["budget"]=> 
    string(4) "1.80" 
    ["counter"]=> 
    NULL 
} 

같은 "날짜"값을 갖는 배열의 맨 마지막 항목을 찾을 수 있도록 내가 필요 :

나는이 같은 구조 배열을 가지고있다. 예를 들어, 배열의 272014 년 5 월 값을 모두 찾고 마지막 항목을 표시해야합니다.

다시 한 번 감사드립니다.

답변

0

합시다 입력 데이터는 $ 데이터에 이러한 신속한 답변에 대한

$resultArr = array(); 
$filteredByDateArr = array(); 

    foreach($data as $entry) 
    {  
if($entry['date']=='May 27, 2014') 
    $resultArr[] = $entry; 

$filteredByDateArr[$entry['date']][] = $entry; 

    } 

    //last entry 
    var_dump($resultArr[count($resultArr)-1]); 
var_dump($filteredByDateArr); 

//This $filteredByDateArr is the array that will give you date respective data. 
//So if you want to find the last entry of say any date $date 

//You can get it by: 

var_dump($filteredByDateArr[$date][count($filteredByDateArr[$date])-1]); 
+0

감사합니다. 나는 이것이 효과가있을 것이라고 생각하지만, 나는 무엇을 필터링해야할지 몰랐다면 어떻게 2014 년 5 월 27 일 동적 인 것을 만들 수 있을까? 배열은 다양한 날짜 결과로 구성됩니다. 매월 매일 필터링해야합니까? – Qtpounder

+0

마지막 값만 사용하려는 경우 배열을 작성하는 이유는 무엇입니까? –

+0

잭 - 내가 보여주고있는 섹션은 배열 조각입니다. 그것은 여러 다른 날짜와 시간을 가지며 최종 결과는 다음과 같이 화면에 표시됩니다. 날짜 기타 값 1 기타 값 2 등 – Qtpounder

관련 문제