Skip to content

Instantly share code, notes, and snippets.

@ammaridris
Last active December 31, 2021 11:13
Show Gist options
  • Save ammaridris/887ad2a84b79906e4b5f to your computer and use it in GitHub Desktop.
Save ammaridris/887ad2a84b79906e4b5f to your computer and use it in GitHub Desktop.
Paparan Maklumat Tarikh Lahir, Umur, Negeri & Jantina Daripada Kad Pengenalan Menggunakan PHP
<?php
$no_ic = 871118077020; //CONTOH NO IC 871118077020
$tmp_hari = substr($no_ic,4,2);
$tmp_bulan = substr($no_ic,2,2);
$tmp_tahun = substr($no_ic,0,2);
$tmp_negeri = substr($no_ic,6,2);
$tmp_jantina = substr($no_ic,11,1);
//TARIKH LAHIR//////////////////////////////////////
if($tmp_tahun >= 00 && $tmp_tahun <= 30) {
$tmp_tahun = 2000+$tmp_tahun;
}
if($tmp_tahun >= 31 && $tmp_tahun <= 99) {
$tmp_tahun = 1900+$tmp_tahun;
}
$tarikh_lahir = $tmp_hari."/".$tmp_bulan."/".$tmp_tahun;
//UMUR//////////////////////////////////////
$tmp_tarikh_lahir = $tmp_tahun."-".$tmp_bulan."-".$tmp_hari;;
$umur = date_create($tmp_tarikh_lahir)->diff(date_create('today'))->y;
//NEGERI//////////////////////////////////////
//Sumber Kod Negeri : http://www.jpn.gov.my/informasi/kod-negeri/
//Untuk Kod Negara : http://www.jpn.gov.my/en/informasi/kod-negara/
$kod_negeri = array(
'01'=>"Johor",
'21'=>"Johor",
'22'=>"Johor",
'23'=>"Johor",
'24'=>"Johor",
'02'=>"Kedah",
'25'=>"Kedah",
'26'=>"Kedah",
'27'=>"Kedah",
'03'=>"Kelantan",
'28'=>"Kelantan",
'29'=>"Kelantan",
'04'=>"Melaka",
'30'=>"Melaka",
'05'=>"Negeri Sembilan",
'31'=>"Negeri Sembilan",
'59'=>"Negeri Sembilan",
'06'=>"Pahang",
'32'=>"Pahang",
'33'=>"Pahang",
'07'=>"Pulau Pinang",
'34'=>"Pulau Pinang",
'35'=>"Pulau Pinang",
'08'=>"Perak",
'36'=>"Perak",
'37'=>"Perak",
'38'=>"Perak",
'39'=>"Perak",
'09'=>"Perlis",
'40'=>"Perlis",
'10'=>"Selangor",
'41'=>"Selangor",
'42'=>"Selangor",
'43'=>"Selangor",
'44'=>"Selangor",
'11'=>"Terengganu",
'45'=>"Terengganu",
'46'=>"Terengganu",
'12'=>"Sabah",
'47'=>"Sabah",
'48'=>"Sabah",
'49'=>"Sabah",
'13'=>"Sarawak",
'50'=>"Sarawak",
'51'=>"Sarawak",
'52'=>"Sarawak",
'53'=>"Sarawak",
'14'=>"Wilayah Persekutuan Kuala Lumpur",
'54'=>"Wilayah Persekutuan Kuala Lumpur",
'55'=>"Wilayah Persekutuan Kuala Lumpur",
'56'=>"Wilayah Persekutuan Kuala Lumpur",
'57'=>"Wilayah Persekutuan Kuala Lumpur",
'15'=>"Wilayah Persekutuan Labuan",
'58'=>"Wilayah Persekutuan Labuan",
'16'=>"Wilayah Persekutuan Putrajaya",
'82'=>"Lain-Lain"
);
$negeri_lahir=$kod_negeri[$tmp_negeri];
//JANTINA//////////////////////////////////////
if($tmp_jantina % 2 == 0) {
$jantina = 'Perempuan';
}
else {
$jantina = 'Lelaki';
}
//PAPARAN OUTPUT//////////////////////////////////////
echo "Tarikh Lahir: ".$tarikh_lahir;
echo "<br />Umur: ".$umur;
echo "<br />Negeri: ".$negeri_lahir;
echo "<br />Jantina: ".$jantina;
?>
@ammaridris
Copy link
Author

ammaridris commented Dec 31, 2021

Kena ubah semula coding tu, kalau tuan ada coding yg betul boleh share di sini.

Tapi logiknya, ic mula 15 ni yang lahir 2015, tak pasti lah kalau yg lahir 1915 ic baru dia mcm mana (kalau ada lah)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment