Nadal nie rozumiem niechęci do spróbowania. Płacisz za każde żądanie do serwera?

Jeżeli nie wiesz czy będzie to wydajne, to napisz skrypt, uruchom go na docelowym serwerze, na którym będzie stała strona / system i oceń czy zadowala Cię wydajność takiego, czy innego rozwiązania.
Co do powyższego... Zrobiłem test na tablicy zawierającej 100000 (sto tysięcy) elementów takich jak: "98|2012-03-26 22:03:54" (poszczególne człony wygenerowałem sobie wcześniej zwykłym
rand()).
Dla zwykłego foreach + strpos + unset czas oscyluje w granicach 0,12 s lokalnie (procesor i5). Na hostingu w Rackspace, procesor bodajże 1 GHz - czas ok. 0,15s. Nie jest tak źle. Z tym że pamiętaj, że ja robiłem test na 100 000 elementów podczas gdy Ty masz ok. 10 000, więc powinno być jeszcze lepiej.
Z
array_filter już jest trochę gorzej, lokalnie czas ok 0,6s. Na hostingu nie sprawdzałem, ale zapewne też koło tego.
Jeżeli jednak nadal boisz się wykonać 7000 iteracji, to biorąc pod uwagę, że zanim Twoje dane stają się tablicą, są one w stringu, to może jakoś od tej strony to ugryziesz? Jeżeli np. spodziewasz się, że większość rekordów będzie trzeba i tak odsiać, bo większość z nich zaczyna się od "18", to może można to odfiltrować już na etapie stringa wyrażeniem regularnym. Choć tak szczerze mówiąc, to nie wydaje mi się, żeby regexp był wydajniejszy.
No, ale gdybać sobie można całą noc - trzeba spróbować

Generalnie wniosek jest taki, że gdyby PHP miało stawać się wysoko niewydajne dla takiego problemu jak powyżej, to kombajny typu Magento przemielające przy każdym żądaniu zbiory danych w tablicach tablic tablic obiektów, nie miałby racji bytu (tak, nie znoszę Magento

)