3 votes

Variantes de la date de contrôle PHP

J'ai trouvé une fonction php checkdate() mais, étrangement, il ne semble accepter que les données au format de int $month , int $day , int $year . Cependant, je passe la date sous forme de chaîne de caractères (exemple "2012-06-13" ), j'ai donc trouvé une solution de rechange, car Je n'autoriserais que les dates saisies dans ce format . Malheureusement, j'ai l'impression que c'est une approche peu sûre et pas très agréable du problème :

function CheckAdditional($value)
{
    $data = explode("-", $value);

    return checkdate($data[1], $data[2], $data[0]);
}

Question : existe-t-il un meilleur moyen de vérifier si la date est valide ?

0voto

Limitless isa Points 270
function DDC($dates){ // Date Day Control
    $dy = substr($dates,0,4);
    $dm = substr($dates,5,2);
    $dd = substr($dates,8,2);
    for($i=0; $i<3; $i++){
        if(!checkdate($dm,$dd,$dy)){
            $dd--;
        }else{$i=3;}
    }
    return $dy.'.'.$dm.'.'.$dd;
}
echo DDC('2013.02.31');
//2013.02.28

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X