2012-07-31 12 views
7

Tengo un cuadro de búsqueda en mi sitio web ... base de datos mysql. Compruebo actualmente si la búsqueda de palabra clave es una categoría o solo una oración que coincide con el título. Me gustaría mejorar aún más al detectar si una fecha es la palabra clave de búsqueda, entonces sabrá eso y SELECCIONAR * publicaciones relevantes para esa fecha. ¿Cómo puedo detectar si es una fecha o no? tal vez una expresión regular?PHP detectar si la búsqueda tiene fecha o no

Para su información, estoy usando el formato estándar de AAAA/MM/DD, por ejemplo, 21/07/2012.

+1

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

+0

@KarolyHorvath 1, hay un montón de comentarios en esa página que hace exactamente lo OP quiere. –

+0

Muchas gracias muchachos –

Respuesta

7

que había prueba con strtotime().

$keyword; 

$time = strtotime($keyword); 

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

Gracias, refiriéndose a doc fue útil y estoy usando esto para resolverlo: D –

2

Es posible que desee ver el PHP functionstrtotime(), que devuelve una marca de tiempo o FALSE si no es una fecha ...

1

strtotime no funciona para mí, porque las cadenas y números enteros son fechas. El código siguiente es una solución mucho mejor

$value_date_array = date_parse($value); 
if(checkdate($value_date_array['month'], $value_date_array['day'], $value_date_array['year'])) 
Cuestiones relacionadas