2012-07-31 9 views
7

Mam pole wyszukiwania na mojej stronie ... Baza danych MySQL. Sprawdzam obecnie, czy wyszukiwanie słów kluczowych jest kategorią, czy tylko zdaniem pasującym do tytułu. Chciałbym to jeszcze ulepszyć, wykrywając, czy data jest słowem kluczowym wyszukiwania, a następnie będzie znała te i WYBIERZ * posty związane z tą datą. Jak mogę sprawdzić, czy jest to data, czy nie? może wyrażenie regularne?Wykrywanie PHP, jeśli wyszukiwanie jest datą lub nie

Dla informacji używam standardowego formatu RRRR/MM/DD, np. 2012/07/21.

+1

podzielonego + http://php.net/manual/en/function.checkdate.php –

+0

@KarolyHorvath +1, istnieje mnóstwo komentarzy na tej stronie, która robi dokładnie to co PO chce. –

+0

Dzięki świetni faceci –

Odpowiedz

7

bym go przetestować z strtotime().

$keyword; 

$time = strtotime($keyword); 

if ($time !== false) { 
    // $keyword is a parsable date! 
} 
+0

Dziękuję, odnosząc się do dokumentu był pomocny i używam tego, aby to rozwiązać: D –

2

Czasami warto spojrzeć na PHP functionstrtotime(), która zwraca znacznik czasu lub FAŁSZ, jeśli nie jest to data ...

1

strtotime nie działa dla mnie, ponieważ struny i całkowitymi są terminy. Poniższy kod jest dużo lepszym rozwiązaniem

$value_date_array = date_parse($value); 
if(checkdate($value_date_array['month'], $value_date_array['day'], $value_date_array['year'])) 
Powiązane problemy