Home > PHP > Fungsi Tanggal dan Waktu (Date/Time)

Fungsi Tanggal dan Waktu (Date/Time)

1. date – Format tanggal dan waktu lokal

Sintaks :

date ( string $format [, int $timestamp ] )

Parameter : $format, adalah format-format tanggal dan waktu yang ingin ditampilkan, berikut adalah format-format untuk tanggal dan waktu :

format karakter Deskripsi Contoh Hasil
Hari/Tanggal
d Tanggal dua digit dalam 1 bulan, jika 1 digit ada nol depannya 01 to 31
D Nama hari dalam 1 minggu, 3 huruf Mon sampai Sun
j Tanggal dalam 1 bulan, tanpa nol depannya 1 to 31
l (huruf kecil ‘L’) Nama hari dalam 1 minggu Sunday sampai Saturday
N ISO-8601 angka yang menunjukkan hari (PHP 5.1.0) 1 (untuk Senin) sampai 7 (untuk Minggu)
S suffix bahasa inggris untuk tanggal, 2 karakter st, nd, rd or th. disatukan dengan j
w Angka yang menunjukkan hari seminggu 0 (Untuk Minggu) sampai 6 (untuk sabtu)
z Tanggal dalam 1 tahun (dimulai dari 0) 0 sampai 365
Minggu
W ISO-8601 nomor minggu dalam 1 tahun, mingguan/week dimulai dari hari Senin Contoh: 42 (Minggu ke 42 dalam tahun)
Bulan
F Nama bulan, seperti January atau March January sampai December
m Angka yang menunjukkan bulan, 2 digit 01 sampai 12
M Nama bulan, 3 huruf Jan sampai Dec
n Angka yang menunjukkan bulan 1 sampai 12
t Jumlah hari bulan yang ditentukan 28 sampai 31
Tahun
Y Tahun 4 digit Contoh: 1999 atau 2003
y tahun 2 digit Contoh: 99 atau 03
Waktu
a Huruf kecil Ante meridiem (am) dan Post meridiem (pm) am atau pm
A Huruf besar Ante meridiem (am) dan Post meridiem (pm) AM atau PM
B Swatch Internet time 000 sampai 999
g Format 12 jam, tanpa 0 1 sampai 12
G Format 24 jam, tanpa 0 0 sampai 23
h Format 12 jam, 2 digit, dengan 0 depannya 01 sampai 12
H Format 24 jam, 2 digit, dengan 0 depannya 00 sampai 23
i Menit 00 sampai 59
s Detik 00 sampai 59
u Microseconds (PHP 5.2.2) Contoh: 54321
Timezone
e Pengidentifikasi Timezone (PHP 5.1.0) Contoh: UTC, GMT, Atlantic/Azores
O perbedaan terhadap waktu Greenwich (GMT) dalam jam Contoh: +0200
P perbedaan terhadap waktu Greenwich (GMT) dalam jam ada titik dua antara jam dan menit (PHP 5.1.3) Contoh: +02:00
T Singkatan Timezone Contoh: EST, MDT
Full Date/Time
c Tanggal ISO 8601  (PHP 5) 2004-02-12T15:19:21+00:00
r Format tanggal RFC 2822 Contoh: Thu, 21 Dec 2000 16:01:07 +0200

$timestamp, timestamp Unix (integer)

Contoh :

<?php
// Misal sekarang adalah tanggal 10 Maret, 2001, 5:16:18 pm

$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
echo $today;

$today = date("m.d.y");                         // 03.10.01
echo $today;

$today = date("j, n, Y");                       // 10, 3, 2001
echo $today;

$today = date("Ymd");                           // 20010310
echo $today;

$today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
echo $today;

$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
echo $today;

$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
echo $today;

$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
echo $today;

$today = date("H:i:s");                         // 17:16:18
echo $today;
?>

2. getdate — Mendapatkan informasi tanggal/waktu

Sintaks :

getdate ([ int $timestamp= time() ] )

Parameter : $timestamp, adalah timestamp UNIX (integer), jika dikosongkan akan mengambil waktu saat ini.

Contoh :

<?php
$today = getdate();
print_r($today);
?>

Hasilnya :

Array
(
    [seconds] => 11
    [minutes] => 25
    [hours] => 21
    [mday] => 29
    [wday] => 5
    [mon] => 10
    [year] => 2010
    [yday] => 301
    [weekday] => Friday
    [month] => October
    [0] => 1288358711
)

3. mktime — Mendapatkan timestamp Unix untuk suatu tanggal

Sintaks :

mktime ([ int $hour= date(“H”) [, int $minute= date(“i”) [, int $second= date(“s”) [, int $month= date(“n”) [, int $day= date(“j”) [, int $year= date(“Y”) [, int $is_dst= -1 ]]]]]]] )

Contoh :

<?php
echo date("M-d-Y", mktime(0, 0, 0, 12, 32, 1997))."<br>";
echo date("M-d-Y", mktime(0, 0, 0, 13, 1, 1997))."<br>";
echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 1998))."<br>";
echo date("M-d-Y", mktime(0, 0, 0, 1, 1, 98))."<br>";

//Hasilnya semua sama : Jan-01-1998
?>

Contoh 2:

<?php
$besok  = mktime(0, 0, 0, date("m")  , date("d")+1, date("Y"));
$bulankemaren = mktime(0, 0, 0, date("m")-1, date("d"),   date("Y"));
$tahundepan  = mktime(0, 0, 0, date("m"),   date("d"),   date("Y")+1);

echo "Besok : ".date("d M Y",$besok)."<br>";
echo "Bulan kemaren : ".date("M Y", $bulankemaren)."<br>";
echo "Tahun depan: ".date("Y", $tahundepan)."<BR>";
?>

4. strtotime — Mengubah string tanggal/waktu (bahasa inggris) ke timestamp Unix.

Sintaks : strtotime ( string $time [, int $now ] )

Contoh :


<?php
echo strtotime("now"), "\n";
echo strtotime("10 September 2000"), "\n";
echo strtotime("+1 day"), "\n";
echo strtotime("+1 week"), "\n";
echo strtotime("+1 week 2 days 4 hours 2 seconds"), "\n";
echo strtotime("next Thursday"), "\n";
echo strtotime("last Monday"), "\n";
?>

5. time — Menghasilkan timestamp Unix saat ini Sintaks : time ( void )

Contoh :

<?php
$minggudepan = time() + (7 * 24 * 60 * 60);
                   // 7 hari; 24 jam; 60 menit; 60 detik
echo 'Sekarang:       '. date('Y-m-d') ."\n<br>";
echo 'Minggu Depan: '. date('Y-m-d', $minggudepan) ."\n<br>";
// atau menggunakan strtotime():
echo 'Minggu Depan: '. date('Y-m-d', strtotime('+1 week')) ."\n<br>";
?>

Hasilnya :

Sekarang: 2010-10-29

Minggu Depan: 2010-11-05

Minggu Depan: 2010-11-05

6. Contoh : Mencari selisih hari antara 2 tanggal

<?php
$tgl1 = "25-10-2010";
$tgl2 = "27-10-2010";

$selisih = strtotime($tgl2) -  strtotime($tgl1);
$hari = $selisih/(60*60*24);
                //60 detik * 60 menit * 24 jam = 1 hari

echo "Selisih tanggal $tgl2 dan $tgl1 adalah $hari hari";
?>
About these ads
Categories: PHP Tags: , , ,
  1. amelogi
    30 November 2010 at 23:52

    Q tag bLog-Mu keBlogQ ya …. ^_^

    • 6 December 2010 at 05:25

      Monggo…
      makasih dah berkunjung..

  2. 19 February 2011 at 20:13

    Salam kenal juga…
    sering2 main yah..hehehe
    Thanks 4 visit, Best Regards

  3. Noname
    24 September 2013 at 02:24

    Saya mau tanya, bagaimana cara memasukkan date ke primary key yg auto increament?
    Misal tanggal 20-09-2013 jika diinput maka pada ID akan ke-input 201309201.
    Mohon bantuannya ya…
    Terima kasih sebelumnya.

    • 26 September 2013 at 02:57

      select nilai max (id_tabel) di database +1
      $max_id = Max(id_tabel) + 1;
      $date = “2013-09-02$max_id”;

  1. 15 December 2010 at 00:32

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 850 other followers

%d bloggers like this: