Mempelajari Fungsi Date pada Pemrograman PHP
Dаlаm реmbuаtаn ѕеbuаh wеbѕіtе berita, untuk ѕеtіар artikel раѕtіnуа dісаntumkаn tаnggаl kараn artikel tеrѕеbut dірublіkаѕіkаn. Itu adalah ѕаlаh contoh dаrі kegunaan реnсаntumаn tаnggаl. Sеhubungаn dengan hal tеrѕеbut, mаkа dаlаm tutоrіаl pemrograman рhр kаlі ini kіtа аkаn mеmаhаmі dаѕаr-dаѕаr tentang fungsi date().
Selain dengan menggunakan fungsi date(), pembuatan tаnggаl dapat jugа dіlаkukаn dеngаn fungѕі&nbѕр; mktime() dan strtotime(). Untuk pembahasan tentang fungsi mktime(), telah dijelaskan secara lebih lengkap pada Tutorial php : Memahami fungsi mktime().
Fungsi date()
Fungsi date() berfungsi dalam mengambil waktu dari server dan menampilkannya sesuai dengan format yang diminta pada script php. Syntax dari penulisan fungsi date() :date(format,timestamp)
Keterangan :- format bersifat wajib dan menyatakan tanggal atau waktu
- tіmеѕtаmр bersifat opsional dаn menyatakan tanggal dan waktu untuk Unіx (Unіx timestamp). Nіlаі dаrі tanggal dаn wаktu untuk Unіx ini bernilai Integer. Unix tіmеѕtаmр іnі mengembalikan nilai dalam bentuk dеtіk saat іnі dengan 1 Jаnuаrі 1970. Contoh : 25 December 2013 akan dіnуаtаkаn dаlаm bentuk dеtіk уаіtu : 1387926000.
Sebelum kita melihat contoh penggunaan fungsi date(), terlebih dahulu kita perlu mengetahui parameter dari format date() :
UNTUK HARI | ||
Simbol | Deskripsi | Contoh |
d | Menampilkan tanggal dalam sebulan dengan bentuk 2 digit angka, jika 1 digit diawali 0 | 01- 31 |
j | Menampilkan tanggal dalam sebulan dengan bentuk angka tanpa diawali 0 untuk 1 digit | 1 - 31 |
D | Menampilkan nama hari dalam seminggu dengan bentuk huruf sebanyak 3 digit | Mon, Sun |
l | Menampilkan nama hari dalam seminggu dengan huruf secara lengkap | Monday, Sunday |
N | Urutan hari dalam seminggu | 1(Monday) s.d 7(Sunday) |
S | Menampilkan nama hari dalam bentuk english ordinal sufix | st, nd, rd, th |
w | Angka yang menunjukkan hari dalam seminggu | 0(Sunday) s.d 6(Saturday) |
Z | Menampilkan hari dalam setahun diawali dengan angka 0 | 0 - 365 |
UNTUK MINGGU | ||
Simbol | Deskripsi | Contoh |
W | Menampilkan urutan minggu dalam setahun. Diperknalkan pada PHP versi 4.1.0. Dalam setahun terdapat 48 minggu. | 42 (Urutan minggu dalam tahun ini) |
UNTUK BULAN | ||
Simbol | Deskripsi | Contoh |
F | Menampilkan nama bulan dalam setahun | January - December |
m | Angka yang menunjukkan nama bulan dalam setahun dengan bentuk 2 digit. Jika 1 digit maka akan diawali dengan 0 | 01 (Untuk January) s.d 12 (December) |
M | Menampilkan nama bulan dalam setahun dengan bentuk 3 digit huruf. | Jan - Dec |
n | Angka yang menunjukkan bulan dalam setahun dengan bentuk 2 digit angka tanpa diawali 0 | 1 - 12 |
UNTUK TAHUN | ||
Simbol | Deskripsi | Contoh |
y | Menampilkan tahun dalam bentuk 4 digit angka | 2011, 2012 |
Y | Menampilkan tahun dalam bentuk 2 digit angka. | 11, 12 |
UNTUK WAKTU | ||
Simbol | Deskripsi | Contoh |
a | Menampilkan lowercase Ante meridiem dan Post merdiem | am , pm |
A | Menampilkan uppercase Ante meridiem dan Post meridiem | AM , PM |
g | Menampilkan jam dalam sehari dengan format 12 jam tanpa diawali 0 | 1 - 12 |
G | Menampilkan jam dalam sehari dengn format 24 jam dan diawali dengan 0 | 0 - 23 |
h | Menampilkan jam dalam sehari dengan format 12 jam dan dalam bentuk 2 digit angka dan jika 1 digit angka maka diawali 0 | 01 - 12 |
H | Menampilkan jam dalam sehari dengan format 24 jam | 00 - 23 |
i | Menampilkan menit dalam satu jam | 00 - 59 |
s | Menampilkan detik dalam satu menit | 00 - 59 |
u | Menampilkan mikrodetik | 654321 |
Contoh 1
Pada contoh.1 ini kita akan menampilkan tanggal dimana bulan akan disajikan dalam bentuk angka, huruf dengan 3 digit dan huruf penuh.<?phpOutputnya :
tanggal_angka();
bulan_3digit_huruf();
bulan_huruf();
function tanggal_angka()
{
echo "Menampilkan tanggal dalam bentuk angka"."<br>";
echo date("m d Y")."<br>";
echo date("Y-m-d")."<br>";
echo date("d,m,Y")."<br>";
echo "<br>";
}
function bulan_3digit_huruf()
{
echo "Menampilkan bulan dalam bentuk 3 digit huruf"."<br>";
echo date("M d Y")."<br>";
echo date("Y-M-d")."<br>";
echo date("d-M-Y")."<br>";
echo "<br>";
}
function bulan_huruf()
{
echo "Menampilkan bulan dalam bentuk huruf"."<br>";
echo date("F d Y")."<br>";
echo date("Y-F-d")."<br>";
echo date("d/F/Y")."<br>";
echo "<br>";
}
?>
Menampilkan tanggal dalam bentuk angka
09 21 2016
2016-09-21
21,09,2016
Menampilkan bulan dalam bentuk 3 digit huruf
Sep 21 2016
2016-Sep-21
21-Sep-2016
Menampilkan bulan dalam bentuk huruf
September 21 2016
2016-September-21
21/September/2016
Contoh 2
Pada contoh.2 ini kita akan menampilkan tanggal yang disertai nama hari .<?phpOutput :
tanggal_dan_hari();
function tanggal_dan_hari()
{
echo "Menampilkan tanggal dan nama hari"."<br>";
echo date("l,m d Y")."<br>";
echo date("D,Y-M-d")."<br>";
echo date("l,d/M/Y")."<br>";
echo "<br>";
}
?>
Menampilkan tanggal dan nama hari
Saturday,05 21 2016
Sat,2016-May-21
Saturday,21/May/2016
Contoh 3
Pada contoh.3 ini kita akan mengimplementasikan bagaimana penggunaan date dalam mencari hari besok, bulan kemarin dan tahun depan<?phpOutput :
$besok = mktime(0, 0, 0, date("m"), date("d")+1, date("Y"));
$bulan_kemarin = mktime(0, 0, 0, date("m")-1, date("d"), date("Y"));
$tahun_depan = mktime(0, 0, 0, date("m"), date("d"), date("Y")+1);
echo "Hari ini : ".date("d-M-Y")."<br>";
echo "Besok : ".date("d M Y",$besok)."<br>";
echo "Bulan kemaren : ".date("M Y", $bulan_kemarin)."<br>";
echo "Tahun depan : ".date("Y", $tahun_depan)."<br>";
?>
Hari ini : 21-May-2016Untuk memahami fungsi mktime(),sillahkan baca : Memahami fungsi mktime().
Besok : 22 May 2016
Bulan kemaren : Apr 2016
Tahun depan : 2017
Fungsi strtotime()
Fungsi strtotime() berfungsi untuk mengubah string dari tanggal atau waktu ke dalam standar timestamp Unix. Nilai keluarannya adalah jumlah detik yang dhitung sejak 1 Januari 1970.strtotime(time,now)
Keterangan :- time menyatakan kondisi tanggal/waktu dalam bentuk string
- now bersifat opsional
Contoh 1
<?phpOutput :
echo strtotime("now")."<br>";
echo strtotime("25 January 2015")."<br>";
echo strtotime("+3 day")."<br>";
echo strtotime("+3 week")."<br>";
echo strtotime("+1 week 2 days 4 hours 52 seconds")."<br>";
echo strtotime("next Monday")."<br>";
echo strtotime("last Monday")."<br>";
?>
1463815570Seperti yang terlihat pada outputnya, hasilnya adalah dalam bentuk jumlah detik yang dihitung dari waktu yang kita inputkan dengan selisih dari 1 Januari 1970. Penggunaan strtotime memang dirasakan user friendly.
1422140400
1464074770
1465629970
1464607622
1463954400
1463349600