A Função abaixo valida datas em PHP, no caso da variável ser no formato DATA a função retorna TRUE
[php]
<?php
function is_date( $str )
{
$stamp = strtotime( $str );
if (!is_numeric($stamp))
{
return FALSE;
}
$month = date( ‘m’, $stamp );
$day = date( ‘d’, $stamp );
$year = date( ‘Y’, $stamp );
if (checkdate($month, $day, $year))
{
return TRUE;
}
return FALSE;
}
echo is_date("01/12/2010"); // vai retornar True
echo is_date("GeekFriend"); // vai retornar False
?>
[/php]
Ou você pode usar a função checkdate.
Por exemplo:
[php]
<?php
echo checkdate(12, 31, 2000); // vai aparecer True, dever ser formato dd,mm,yyyy
?>
[/php]
Mais informações: http://php.net/manual/en/function.checkdate.php