{"id":13830,"date":"2021-08-13T11:42:26","date_gmt":"2021-08-13T11:42:26","guid":{"rendered":"https:\/\/freehost.page\/?p=13830"},"modified":"2021-08-13T11:42:26","modified_gmt":"2021-08-13T11:42:26","slug":"ngay-thang-nam-sinh-php","status":"publish","type":"post","link":"https:\/\/kiencang.net\/ngay-thang-nam-sinh-php\/","title":{"rendered":"Thao t\u00e1c d\u1eef li\u1ec7u ng\u00e0y th\u00e1ng n\u0103m sinh trong b\u1ea3ng h\u1ecd t\u00ean b\u1eb1ng PHP"},"content":{"rendered":"\n
Ng\u00e0y th\u00e1ng n\u0103m sinh l\u00e0 d\u1eef li\u1ec7u r\u1ea5t th\u00fa v\u1ecb \u0111\u1ec3 th\u1ed1ng k\u00ea c\u00e1c thay \u0111\u1ed5i v\u1ec1 h\u1ecd t\u00ean ng\u01b0\u1eddi, ch\u1eb3ng h\u1ea1n nh\u01b0 khuynh h\u01b0\u1edbng t\u00ean c\u00f3 nhi\u1ec1u t\u1eeb h\u01a1n, gi\u1ea3m \u0111\u1ec7m V\u0103n, Th\u1ecb, c\u00e1c t\u00ean m\u1edbi xu\u1ea5t hi\u1ec7n, c\u00e1c t\u00ean d\u1ea7n k\u00e9m ph\u1ed5 bi\u1ebfn, v\u00e2n v\u00e2n.<\/p>\n\n\n\n
C\u0169ng t\u01b0\u01a1ng t\u1ef1 v\u1edbi h\u1ecd t\u00ean, ch\u00fang ta c\u0169ng c\u1ea7n chu\u1ea9n h\u00f3a d\u1eef li\u1ec7u ng\u00e0y th\u00e1ng n\u0103m sinh.<\/p>\n\n\n\n
Ng\u01b0\u1eddi Vi\u1ec7t Nam th\u01b0\u1eddng s\u1eed d\u1ee5ng c\u1ea5u tr\u00fac vi\u1ebft ng\u00e0y tr\u01b0\u1edbc, r\u1ed3i \u0111\u1ebfn th\u00e1ng v\u00e0 cu\u1ed1i c\u00f9ng l\u00e0 n\u0103m sinh.<\/p>\n\n\n\n
\u0110\u1ec3 ph\u00e2n t\u00e1ch gi\u1eefa ng\u00e0y th\u00e1ng n\u0103m ng\u01b0\u1eddi ta d\u00f9ng k\u00fd t\u1ef1 \/<\/p>\n\n\n\n
V\u00ed d\u1ee5 15\/6\/1995.<\/p>\n\n\n\n
\u1ede \u0111\u00e2y c\u00f3 th\u1ec3 c\u00f3 hai c\u00e1ch vi\u1ebft \u0111\u1ed1i v\u1edbi ng\u00e0y, th\u00e1ng cho c\u00e1c gi\u00e1 tr\u1ecb d\u01b0\u1edbi 10. C\u00f3 th\u1ec3 c\u00f3 s\u1ed1 0 \u0111\u1eb1ng tr\u01b0\u1edbc. V\u00ed d\u1ee5 03\/05\/1995 ho\u1eb7c kh\u00f4ng c\u00f3 s\u1ed1 0, v\u00ed d\u1ee5 3\/5\/1995. Ch\u00fang ta c\u1ea7n th\u1ed1ng nh\u1ea5t ki\u1ec3u \u0111\u1ecbnh d\u1ea1ng. <\/p>\n\n\n\n
C\u00e1 nh\u00e2n t\u00f4i th\u00edch ch\u1ecdn ki\u1ec3u 3\/5\/1995 h\u01a1n, v\u00ec t\u00e1ch d\u1eef li\u1ec7u s\u1ebd d\u1ec5 h\u01a1n. <\/p>\n\n\n\n
Ta c\u00f3 th\u1ec3 d\u00f9ng h\u00e0m Ta c\u00f3 th\u1ec3 d\u00f9ng h\u00e0m D\u1eef li\u1ec7u ng\u00e0y th\u00e1ng n\u0103m sau khi s\u1eed d\u1ee5ng \/ \u0111\u1ec3 ng\u0103n c\u00e1ch ng\u00e0y th\u00e1ng n\u0103m s\u1ebd ch\u1ec9 bao g\u1ed3m s\u1ed1 v\u00e0 d\u1ea5u \/<\/p>\n\n\n\n Ch\u00fang ta s\u1ebd d\u00f9ng h\u00e0m \u0111\u1ec3 ki\u1ec3m tra xem m\u1ed9t d\u1eef li\u1ec7u n\u00e0o \u0111\u00f3 c\u00f3 k\u00fd t\u1ef1 kh\u00f4ng chu\u1ea9n n\u00e0o kh\u00f4ng b\u1eb1ng l\u1ec7nh sau:<\/p>\n\n\n\n Sai d\u1eef li\u1ec7u c\u0169ng c\u00f3 th\u1ec3 l\u00e0 thi\u1ebfu m\u1ed9t trong c\u00e1c d\u1eef li\u1ec7u ng\u00e0y, th\u00e1ng, n\u0103m (t\u1ee9c l\u00e0 ch\u1ec9 c\u00f3 2 tr\u00ean 3 d\u1eef li\u1ec7u ti\u00eau chu\u1ea9n).<\/p>\n\n\n\n \u0110\u1ec3 ki\u1ec3m tra nhanh c\u00e1i n\u00e0y ch\u00fang ta s\u1ebd \u0111\u1ebfm xem c\u00f3 bao nhi\u00eau d\u1ea5u \/, n\u00f3 ph\u1ea3i c\u00f3 \u0111\u00fang 2 d\u1ea5u \/ m\u1edbi \u0111\u00fang ti\u00eau chu\u1ea9n. M\u00e3<\/p>\n\n\n\n D\u1eef li\u1ec7u \u1edf b\u01b0\u1edbc n\u00e0y tr\u01b0\u1edbc khi \u0111i v\u00e0o ki\u1ec3m tra c\u1ea7n v\u01b0\u1ee3t qua b\u00e0i test d\u1eef li\u1ec7u l\u1ed7i \u1edf m\u1ea5y b\u01b0\u1edbc tr\u00ean \u0111\u1ec3 ch\u1eafc ch\u1eafn n\u00f3 c\u00f3 c\u1ea5u tr\u00fac s\u1ed1\/s\u1ed1\/s\u1ed1<\/p>\n\n\n\n V\u00ec ng\u00e0y \u0111\u1ee9ng tr\u01b0\u1edbc gi\u00e1 tr\u1ecb c\u1ee7a n\u00f3 ch\u1ec9 \u0111\u01b0\u1ee3c ph\u00e9p n\u1eb1m trong kho\u1ea3ng t\u1eeb 1 – 31;<\/p>\n\n\n\n Th\u00e1ng \u1edf gi\u1eefa ch\u1ec9 \u0111\u01b0\u1ee3c ph\u00e9p n\u1eb1m trong kho\u1ea3ng 1 – 12;<\/p>\n\n\n\n N\u0103m th\u00ec t\u00f9y d\u1eef li\u1ec7u c\u1ee7a b\u1ea1n. \u0110\u1ed1i v\u1edbi ng\u01b0\u1eddi s\u1ed1ng th\u00ec n\u00f3 kh\u00f4ng \u0111\u01b0\u1ee3c nh\u1ecf h\u01a1n 1900 v\u00e0 l\u1edbn h\u01a1n 2022 (n\u0103m hi\u1ec7n t\u1ea1i vi\u1ebft b\u00e0i n\u00e0y l\u00e0 2021).<\/p>\n\n\n\n \u0110o\u1ea1n m\u00e3 s\u1ebd gi\u1ea3i quy\u1ebft v\u00e0 thay th\u1ebf \u0111\u01b0\u1ee3c c\u00e1c m\u00e3 d\u00e0i d\u00f2ng \u1edf tr\u00ean \u0111\u00f3 l\u00e0 th\u00f4ng qua regular expression (\u0111\u01b0\u1ee3c nhi\u1ec1u ng\u00f4n ng\u1eef l\u1eadp tr\u00ecnh h\u1ed7 tr\u1ee3 ch\u1ee9 kh\u00f4ng ri\u00eang g\u00ec PHP, \u0111\u00e2y l\u00e0 gi\u1ea3i ph\u00e1p r\u1ea5t m\u1ea1nh, nhanh g\u1ecdn \u0111\u1ec3 x\u1eed l\u00fd chu\u1ed7i).<\/p>\n\n\n\n C\u00e2u l\u1ec7nh Tuy nhi\u00ean n\u00f3 v\u1eabn ch\u01b0a ph\u00e1t hi\u1ec7n \u0111\u01b0\u1ee3c kho\u1ea3ng h\u1ee3p l\u1ec7 c\u1ee7a ng\u00e0y (1 – 31), th\u00e1ng (1 – 12). Ch\u00fang ta v\u1eabn c\u1ea7n x\u1eed l\u00fd v\u1ea5n \u0111\u1ec1 n\u00e0y.<\/p>\n\n\n\n C\u00e2u l\u1ec7nh \u0111\u1ec3 ph\u00e1t hi\u1ec7n \u0111i\u1ec1u n\u00e0y (gi\u1ea3 d\u1ee5 th\u00eam l\u00e0 d\u1eef li\u1ec7u c\u1ee7a t\u00f4i c\u1ea7n n\u0103m h\u1ee3p l\u00fd n\u1eb1m trong kho\u1ea3ng 2004 \u0111\u1ebfn 2016):<\/p>\n\n\n\n Ng\u00e0y th\u00e1ng n\u0103m sinh l\u00e0 d\u1eef li\u1ec7u r\u1ea5t th\u00fa v\u1ecb \u0111\u1ec3 th\u1ed1ng k\u00ea c\u00e1c thay \u0111\u1ed5i v\u1ec1 h\u1ecd t\u00ean ng\u01b0\u1eddi, ch\u1eb3ng h\u1ea1n nh\u01b0 khuynh h\u01b0\u1edbng t\u00ean c\u00f3 nhi\u1ec1u t\u1eeb h\u01a1n, gi\u1ea3m \u0111\u1ec7m V\u0103n, Th\u1ecb, c\u00e1c t\u00ean m\u1edbi xu\u1ea5t hi\u1ec7n, c\u00e1c t\u00ean d\u1ea7n k\u00e9m ph\u1ed5 bi\u1ebfn, v\u00e2n v\u00e2n. C\u0169ng t\u01b0\u01a1ng t\u1ef1 v\u1edbi h\u1ecd t\u00ean, ch\u00fang ta …<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[238],"tags":[],"yoast_head":"\nIf<\/code> r\u1ed3i so s\u00e1nh d\u1eef li\u1ec7u v\u1edbi
NULL<\/code> v\u00e0 r\u1ed7ng, v\u00ed d\u1ee5:<\/p>\n\n\n\n
if (($ngay_sinh==NULL) || ($ngay_sinh=='')) {echo \"kh\u00f4ng c\u00f3 d\u1eef li\u1ec7u\";}<\/code><\/pre>\n\n\n\n
str_replace<\/code> \u0111\u1ec3 th\u1ef1c hi\u1ec7n nhi\u1ec7m v\u1ee5 n\u00e0y, v\u00ed d\u1ee5:<\/p>\n\n\n\n
$ngay_sinh1 = \"3-5-1995\";\n$ngay_sinh2 = \"3.5.1995\";\n\n$thaythe = array('-', '.');\n$ngay_sinh1 = str_replace($thaythe, \"\/\", $ngay_sinh1);\n$ngay_sinh2 = str_replace($thaythe, \"\/\", $ngay_sinh2);\n\necho $ngay_sinh1; \/\/ k\u1ebft qu\u1ea3 3\/5\/1995\necho \"<\/br>\";\necho $ngay_sinh2; \/\/ k\u1ebft qu\u1ea3 3\/5\/1995<\/code><\/pre>\n\n\n\n
preg_match('\/[a-z]\/', '5\/7b\/1987', $matches1);\n\nif (count($matches1) > 0) {echo \"c\u00f3 l\u1ed7i 1\";}\n\necho \"<\/br>\";\n\n$ngaythang='5\/7,\/1987';\n$kytuloi = array('?',')', '(', '[', ']', '{', '}', '.', ',', '\"', ':', ';', '~', '!', '@', '#', '%', '^', '&', '*', '+', '=', '-', '_', '>', '<'); \/\/\n$t = count($kytuloi);\n$loi=array();\n for ($i=0;$i<$t;$i++) {\n $l=mb_strpos($ngaythang,$kytuloi[$i]);\n if ($l>0) {$loi[$i]=1;}\n }\nif (count($loi) > 0) {echo 'c\u00f3 l\u1ed7i 2';} <\/code><\/pre>\n\n\n\n
$gach=substr_count('6\/1987', '\/');\nif ($gach!=2) {echo 'c\u00f3 l\u1ed7i';} \/\/ $gach = 1, do v\u1eady \u0111\u00e2y l\u00e0 th\u00f4ng tin ng\u00e0y th\u00e1ng n\u0103m l\u1ed7i<\/code><\/pre>\n\n\n\n
$nt1=\"5\/7\/1987\";\n$nt2=\"o5\/7\/1987\"; \/\/ c\u00f3 ch\u1eef o\n$nt3=\"7\/1987\"; \/\/ ch\u1ec9 c\u00f3 th\u00e1ng v\u00e0 n\u0103m\n$nt4=\"7\/5\"; \/\/ ch\u1ec9 c\u00f3 ng\u00e0y v\u00e0 th\u00e1ng\n$nt5=\"1987\/7\/5\"; \/\/ n\u0103m l\u1ed9n l\u00ean \u0111\u1ea7u\n\npreg_match('\/\\b\\d{1,2}\\\/\\d{1,2}\\\/\\d{4}\\b\/', $nt1, $matches1);\nif (count($matches1) == 0 || count($matches1) == NULL) {echo \"c\u00f3 l\u1ed7i\";} else { echo \"kh\u00f4ng c\u00f3 l\u1ed7i\";} \/\/ K\u1ebft qu\u1ea3 kh\u00f4ng c\u00f3 l\u1ed7i\n\necho \"<\/br>\";\n\npreg_match('\/\\b\\d{1,2}\\\/\\d{1,2}\\\/\\d{4}\\b\/', $nt2, $matches2);\nif (count($matches2) == 0 || count($matches2) == NULL) {echo \"c\u00f3 l\u1ed7i\";} else { echo \"kh\u00f4ng c\u00f3 l\u1ed7i\";} \/\/ k\u1ebft qu\u1ea3 c\u00f3 l\u1ed7i\n\necho \"<\/br>\";\n\npreg_match('\/\\b\\d{1,2}\\\/\\d{1,2}\\\/\\d{4}\\b\/', $nt3, $matches3);\nif (count($matches3) == 0 || count($matches3) == NULL) {echo \"c\u00f3 l\u1ed7i\";} else { echo \"kh\u00f4ng c\u00f3 l\u1ed7i\";} \/\/ k\u1ebft qu\u1ea3 c\u00f3 l\u1ed7i\n\necho \"<\/br>\";\n\npreg_match('\/\\b\\d{1,2}\\\/\\d{1,2}\\\/\\d{4}\\b\/', $nt4, $matches4);\nif (count($matches4) == 0 || count($matches4) == NULL) {echo \"c\u00f3 l\u1ed7i\";} else { echo \"kh\u00f4ng c\u00f3 l\u1ed7i\";} \/\/ k\u1ebft qu\u1ea3 c\u00f3 l\u1ed7i\n\necho \"<\/br>\";\n\npreg_match('\/\\b\\d{1,2}\\\/\\d{1,2}\\\/\\d{4}\\b\/', $nt5, $matches5);\nif (count($matches5) == 0 || count($matches5) == NULL) {echo \"c\u00f3 l\u1ed7i\";} else { echo \"kh\u00f4ng c\u00f3 l\u1ed7i\";} \/\/ k\u1ebft qu\u1ea3 c\u00f3 l\u1ed7i<\/code><\/pre>\n\n\n\n
preg_match('\/\\b\\d{1,2}\\\/\\d{1,2}\\\/\\d{4}\\b\/', $ngaythang, $matches) <\/code>s\u1ebd ki\u1ec3m tra d\u1eef li\u1ec7u ng\u00e0y th\u00e1ng n\u0103m v\u00e0 b\u1ea5t c\u1ee9 d\u1eef li\u1ec7u n\u00e0o kh\u00e1c c\u1ea5u tr\u00fac ng\u00e0y (1 ho\u1eb7c 2 s\u1ed1)\/th\u00e1ng (1 ho\u1eb7c 2 s\u1ed1)\/n\u0103m (ph\u1ea3i 4 s\u1ed1) th\u00ec \u0111\u1ec1u b\u00e1o l\u1ed7i.<\/p>\n\n\n\n
$ngaythang = '05\/07\/2015';\n$tach_ngaythang=array();\n$tach_ngaythang=explode('\/', $ngaythang); \/\/ cho v\u00e0o m\u1ea3ng\n\n$ng=$tach_ngaythang[0]; \n$th=$tach_ngaythang[1];\n$na=$tach_ngaythang[2];\n\n$ngs = (int)$ng; \/\/ chuy\u1ec3n th\u00e0nh d\u1ea1ng s\u1ed1\n$ths = (int)$th;\n$nas = (int)$na;\n\nif ($ngs < 1 || $ngs > 31 || $ths < 1 || $ths > 12 || $nas > 2016 || $nas < 2004) \n {echo \"c\u00f3 l\u1ed7i kho\u1ea3ng gi\u00e1 tr\u1ecb \u0111\u01b0\u1ee3c ph\u00e9p\";} \n else \n {echo \"d\u1eef li\u1ec7u h\u1ee3p l\u1ec7: \"; $ngay_chuan=$ngs.'\/'.$ths.'\/'.$nas; echo $ngay_chuan;}<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"