note 71597 added to function.checkdate
| From: | smith at mainbase dot ch | Date: | Thu, 07 Dec 2006 10:43:56 +0000 |
| Subject: | note 71597 added to function.checkdate | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-120364@lists.php.net to get a copy of this message | ||
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;}
}
----
Server IP: 194.153.94.10
Probable Submitter: 62.2.110.186
----
Manual Page -- http://www.php.net/manual/en/function.checkdate.php
Edit -- https://master.php.net/note/edit/71597
Del: integrated -- https://master.php.net/note/delete/71597/integrated
Del: useless -- https://master.php.net/note/delete/71597/useless
Del: bad code -- https://master.php.net/note/delete/71597/bad+code
Del: spam -- https://master.php.net/note/delete/71597/spam
Del: non-english -- https://master.php.net/note/delete/71597/non-english
Del: in docs -- https://master.php.net/note/delete/71597/in+docs
Del: other reasons-- https://master.php.net/note/delete/71597
Reject -- https://master.php.net/note/reject/71597
Search -- https://master.php.net/manage/user-notes.php