note 71597 deleted from function.checkdate by nlopess

From: Date: Thu, 07 Dec 2006 18:14:46 +0000
Subject: note 71597 deleted from function.checkdate by nlopess
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-120398@lists.php.net to get a copy of this message
Note Submitter: smith at mainbase dot ch ---- a function by kevin function datumcheck($datumeingabe) { switch (true) { case preg_match('/\\A[.\\d]{6,10}\\z/', $datumeingabe): // date with '.' $datumeingabe = explode('.', $datumeingabe); break; case preg_match('/\\A[\/\\d]{6,10}\\z/', $datumeingabe): // date with '/' $datumeingabe = explode('/', $datumeingabe); break; case preg_match('/\\A[,\\d]{6,10}\\z/', $datumeingabe): // date with ',' $datumeingabe = explode(',', $datumeingabe); break; case preg_match('/\\A[\ \\d]{6,10}\\z/', $datumeingabe): // date with ' ' $datumeingabe = explode(' ', $datumeingabe); break; case preg_match('/\\A[-\\d]{6,10}\\z/', $datumeingabe): // date with '-' $datumeingabe = explode('-', $datumeingabe); break; default: return false; } // check Day if (strlen($datumeingabe[0]) == 1) { $datumeingabe[0] = '0'.$datumeingabe[0]; } else { if (strlen($datumeingabe[0]) > 2) {return false;} } // check Month if (strlen($datumeingabe[1]) == 1) { $datumeingabe[1] = '0'.$datumeingabe[1]; } else { if (strlen($datumeingabe[1]) > 2) {return false;} } // check Year if (strlen($datumeingabe[2]) == 2) { $datumeingabe[2] = '20'.$datumeingabe[2]; } else { if (strlen($datumeingabe[2]) > 4 or strlen($datumeingabe[2]) == 3 or $datumeingabe[2] >= 3000) {return false;} } // check validity if (checkdate($datumeingabe[1], $datumeingabe[0], $datumeingabe[2])) { return $datumeingabe = $datumeingabe[0].'.'.$datumeingabe[1].'.'.$datumeingabe[2]; } else {return false;} }

« previous php.notes (#120398) next »