--> Skip to main content

Memahami Fungsi Date pada Pemrograman PHP


Dalam pembuatan sebuah website berita, untuk setiap artikel pastinya dicantumkan tanggal kapan artikel tersebut dipublikasikan. Itu adalah salah contoh dari kegunaan pencantuman tanggal. Sehubungan dengan hal tersebut, maka dalam tutorial pemrograman php kali ini kita akan memahami dasar-dasar tentang fungsi date().

Selain dengan menggunakan fungsi date(), pembuatan tanggal dapat juga dilakukan dengan fungsi 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
  • timestamp bersifat opsional dan menyatakan tanggal dan waktu untuk Unix (Unix timestamp). Nilai dari tanggal dan waktu untuk Unix ini bernilai Integer. Unix timestamp ini mengembalikan nilai dalam bentuk detik saat ini dengan 1 Januari 1970. Contoh : 25 December 2013 akan dinyatakan dalam bentuk detik yaitu : 1387926000. 

Sebelum kita melihat contoh penggunaan fungsi date(), terlebih dahulu kita perlu mengetahui parameter dari format date() :
UNTUK HARI
SimbolDeskripsiContoh
dMenampilkan tanggal dalam  sebulan dengan bentuk 2 digit angka, jika 1 digit diawali 001- 31
jMenampilkan tanggal dalam sebulan dengan bentuk angka tanpa diawali 0 untuk 1 digit1 - 31
DMenampilkan nama hari dalam seminggu dengan bentuk huruf sebanyak 3 digitMon, Sun
lMenampilkan nama hari dalam seminggu dengan huruf secara lengkap
MondaySunday
NUrutan hari dalam seminggu1(Monday)
s.d 7(Sunday)
SMenampilkan nama hari dalam bentuk english ordinal sufixst, nd, rd, th
w
Angka yang menunjukkan hari dalam seminggu
 0(Sunday) s.d 6(Saturday)
ZMenampilkan hari dalam setahun diawali dengan angka 00 - 365
UNTUK MINGGU
SimbolDeskripsiContoh
WMenampilkan urutan minggu dalam setahun. Diperknalkan pada PHP versi 4.1.0. Dalam setahun terdapat 48 minggu.42 (Urutan minggu dalam tahun ini)

UNTUK BULAN
SimbolDeskripsiContoh
FMenampilkan nama bulan dalam setahunJanuary - December
mAngka yang menunjukkan nama bulan dalam setahun dengan bentuk 2 digit. Jika 1 digit maka akan diawali dengan 001 (Untuk January) s.d 12 (December)
MMenampilkan nama bulan dalam setahun dengan bentuk 3 digit huruf.
Jan - Dec
nAngka yang menunjukkan bulan dalam setahun dengan bentuk 2 digit angka tanpa diawali 0
1 - 12

UNTUK TAHUN
SimbolDeskripsiContoh
yMenampilkan tahun dalam bentuk 4 digit angka2011, 2012
YMenampilkan tahun dalam bentuk 2 digit angka. 
11, 12

UNTUK WAKTU
SimbolDeskripsiContoh
aMenampilkan lowercase Ante meridiem dan Post merdiemam , pm
AMenampilkan uppercase Ante meridiem dan Post meridiemAM , PM
g
Menampilkan jam dalam sehari dengan format 12 jam tanpa diawali 01 - 12
GMenampilkan jam dalam sehari dengn format 24 jam dan diawali dengan 0
0 - 23
hMenampilkan jam dalam sehari dengan format 12 jam dan dalam bentuk 2 digit angka dan jika 1 digit angka maka diawali 001 - 12
HMenampilkan jam dalam sehari dengan format 24 jam 00 - 23
i
Menampilkan menit dalam satu jam
00 - 59
sMenampilkan detik dalam satu menit00 - 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.
<?php

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>";
}

?>
Outputnya :
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 .
<?php

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>";
}

?>
Output :
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
<?php

$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>";
?>
Output :
Hari ini : 21-May-2016
Besok : 22 May 2016
Bulan kemaren : Apr 2016
Tahun depan : 2017
Untuk memahami fungsi mktime(),sillahkan baca : Memahami fungsi mktime().




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

<?php
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>";
?>
Output :
1463815570
1422140400
1464074770
1465629970
1464607622
1463954400
1463349600
Seperti 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.
Comment Policy: Silahkan tuliskan komentar Anda yang sesuai dengan topik postingan halaman ini. Komentar yang berisi tautan tidak akan ditampilkan sebelum disetujui.
Buka Komentar
Tutup Komentar