Anda di halaman 1dari 2

tiloR|($t|OP

Inginmencari apakah tahu tahuninitahunkabisat? Atau inginmencari jatuhpadahariapatanggal Januari tahu 1 2012nanti? Tenang saja, semua dapat ini diketahui secara mudah dengan menggunakan fungsi tanggal dan waktu PHP. di

echo date(nhrIrs // // Mendapatkan ConLoh ltagilr ("1,

A", langgal

rnktimeO ),,'<br>', ; dan waktu sistem 03-:33:18 AM .,'<br>',,.

Monday, 05 May 2008, d F Y, h;i;s waktu dengan A ! , 1C E S r / rnktimeO) dan waktu A',

echo date //

mktimeO)

Mendapatkan

timezone

/ / HaBLlt

"0L:33:18 (.h:i:B

Persiapan
Sebelum menjalankan skrip-skrip di bawah ini, terdapat beberapahal yang harus Anda lakukan. a Pastikan paket Apache,PHP5, dan MySQL (opsional), sudahterinstalasidenganbaik pada sistemAnda. a Direktori yang digunakan dalam latihan ini menggunakan direktori user_dir Apache yang dalam contoh ini terdapat di /home/supriyanto/public_html/ll0 6-2008.

echo date // / /

A T/,

n<br>,.; daLam IS08601 format

Mendapatkan EasLlt

tanggal

"2008-05-05T01r33:l-8+02:00'l mktlme O ) ;

echo daEe ( "c", ?>

i +***"*'

rlLd,,,E.

H.di.!

Fungsi tanggal waHu PHP dan di


{ Menampilkan tanggal dan waktu saat ini. Untuk meI nampilkan tanggal dan waktu saat ini, Anda dapat menggunakan fungsi getdateQ.Masuk ke direktori kerja, kemudian ketikan file fungsi_getdate.phpberikut:
.?php // memperoleh tanggal dan waktu saat inj-

I 05 May 2oo8 A I01:33:18 M i Monday, 05 May 2008, 01:33:18 AN{ A i 01:33:18 M CEST I 2008-05-05T01 :33r18+02:00 t_,_._.___.,,._.,_.,

I
-__*-J

$now = getdate0; // mengubah ke format sEring "." $now["minutes,,l

$currentTime ":" $now["seconds"j t $currenlDate

= $now["hours"]

string ke format waktu. Dalam proses perQMenSubah Uhitungan yang berkaitan denganformat waktu, kadangkala kita butuh untuk mengubah suatu format string ke dalam format waktu. Untuk melakukan hal ini, Anda dapat menggunakan fungsi strtotime0. Ketikan skrip fungsi_strtotime.php berikut untuk melihat cara mengubah format string ke dalam format waktu.
.?php / / Definlsi string yang akan digunakan

= Snow["mday"]

"."

$now[,'mon',]

$nowt"year'l; t'Saat ini // Haai!: (contoh) echo "Saat ini

$str jam 21.29139 di tanggal 4.5.2008' //

= "2008050423s0s4, i string ke dalam format waktu , tanggal/waktu yang dapat

Merubah

$ts=etrtotime($str)i jam $currentTime di tanggal // Forrnat ke dalam bentuk

(-rrrrahfn.ta,,.

dibaca // IJaeLI: ($tg "Sunday, === -1) 04 May 2008 1L:50:54 ? "lnvalid strlng" 9M" d F Y hr

?>

echo
4 Ee !'r* aqrry qooh:rkr looe !.rp R.rrulu+nu

: date("1,

a:
,FG{r^r$rtud ll$r.d

.h.o ...60
BE.H.rdrns!

i:e ?>

A", $ts);

Saat ini jam 21:29,39 di tanggal 4 5 2008

format tanggal dan waktu. Pada contoh di l;Mengubah Gatas, output yang dihasilkan masih menggunakan format UNIX. Untuk mengubahnya ke dalam bentuk yang mudah dibaca oleh pengguna, Anda dapat menggunakan fungsi dateQ. Ketikan skrip fungsi_date.php di bawah ini untuk melihat bentuk output tanggal dan waktu yang Iebih mudah dibaca oleh pengguna:
<?php // // !.,lendapaikan ConLoh ga6il: tanggal sistem

+hh9

$.nd

t+bt..r

Bsc Hr.dh.t

Sunday,04 May 2008 11:50:54 PM

,/lMengubah string dalam bentuk kalimat ke dalam forrtmat waktu. Selain dalam bentuk string biasa, fungsi strtotime0 juga menerima string yang berbentuk kalimat berbahasa Inggris. Sebagai contoh, ketikan skrip fungsi strtotime_2.php berikut untuk melihat contoh perubahan string kalimat ke dalam bentuk waktu:
.?php // Di agumsikan saaE lni "Monday 05 May 2008, 02:33:05

04 May 2008

echo date ( "d M Y,, , mktime O ) .,,<br>,, ; // / / Mendapatkan conto}] Haeil: waktu sistem

01:33 r 18 AM

//

Mendefinieikan

string

72

o6/2008 rNFoLtNUx

www.infolinux.webid .

tfi|0ft|{$il0P
$str / / = "next Friday"; string ke dalan fomat waktu KoLersi $ts = strtotine($str); // Fornat ke dalam bentuk tanggal/waktu yang mudah

i i :,'lli. ii li i :'

dibaca / / HesiI Fri dev oc Mav 2008 f2:00:00 AM" ? "Invalid string" : date("1, d F Y

echo ($ts === false) h;i:s // A", gts);

fungsi mktimeQdan date0. ini, Anda dapat menggunakan Fungsi mktime0 sendid memiliki format: mktime (int hour, int minute, int second,int month, int day, int year). Pada skrip find_number_of_days.php berikut ini, modifier "t" yang terdapat pada fungsi date0 akan meneruskanke jumlah hari dari bulan bersangkutan.Nilai yang dihasilkan berkisarantara28 sampai31.
.?php ,// Mendapatkan formaL waklu unguk bulan Mei 2008

Mendefinisikan

sering ago"; waktu

$str / /

= "2 weeks 6 houre string

$ t . s = m i ( t i m e ( 0 , 0 ,0 , 5 , 1 , 2 0 0 8 ) ; //
//

xonvers!

ke dalam bentuk

Mencari
HaSII:

jumlah
Jf

hari

pada bulan

yang diberikan

$ts = strtotine($str); // Format ke dalam bentuk tanggal/waktu yang mudah

echo date {',L',, $ts) ;

dibaca // Hasil: "Sunday, 20 April 2008 08:33;05 string" PM" d F Y


'!h Edd \'& + r5'.r/ eoDkitrrts li .;Latil Iooi: dph Frr{,.tlou r! , n,p'r'r'"{,-s!!''an,'L'5rr,,.,rnr GE. !.1d er

echo ($ts === false) h:i:s A", $ts);

? "Invalid

: dare("1,

*,,qr

iu lkn,d

i31

P 1 2 : 0 0 : 0 0 M s u n d a y ,2 0 A p r i l 2 0 0 8 0 B : 3 3 : 0 5 M A

tahun kabisat atau bukan. Dalam sistem fiMengetahui Upenanggalan, diketahui terdapat tahun kabisat yang berselang setiap4 tahun sekali.Hal ini dapat dilihat pada jumlah tanggal bulan Februari tahun kabisat yang berjumlah 29 hari. Untuk mengetahui suatu tahun adalah tahun kabisat atau bukan, dapat dilihat dari perhitungan jika tahun tersebut habis dibagi 400 atau 4, tetapl tidak habis dibagi 100,maka tahun tersebut merupakan tahun berikut kabisat. Ketikkan skrip fungsi_testleapyear.php untuk mengetahuiapakah tahun 2004 dan 2001merupakan tahun kabisat atau bukan:
. ?php // Fungsi untuk kabisat !estleapYear($year) = ( ($yeart400 != 0)) ? true == 0) { | | (9yearta == 0 && mengetes jika tahun tersebut adalah

pada suatu tanggal. Untuk meryMengetahui nama hari f ngetahui nama hari pada suatu tanggal, baik itu tanggal di masalalu maupun di masamendatang,Anda dapat menggunakanfungsi mktime0 dan dateQ. Modifier "I" yang diberikan pada fungsi date0, akan mengubahtanggal yang diberikan ke dalam nama hari yang nilainya dari Sundayhingga Saturday.Untuk mengetahuilebih lanjut, berikut: silakan jalankan skrip find-a-day_name.php
< ?php ,// MendapaLkan format waktu untuk tanggal 01-01-2012

$ t s = m k t i m e ( 0 , 0 , 0 , 1 , 1 , , 2 0 L 2 ); ,// MendapaLkan nama hari "Sunday" / / HaBiL: echo date ( "1" , $t.s) ; dalam minggu lersebut

tahun

funcLion $ret $yeartL00 return / / Hasil.:

: false;

fiKonversi waktu lokal ke GMT. Untuk melakukan peOrubahan dari waktu lokat ke Greenwich Mean Time (GMT), Anda dapat menggunakan fungsi gmdate0.Sebagai contoh,ketikan skrip fungsi_gmdate.php berikut:
.?php // xonversjwaktu lokal saat ini (rsT) ke cMT

$ret; ) "Ini tahun

kabisat" ? "fni <br>"; tahun kabisat <br>"

echo testleapYear(2004) "Ini // bukan tahun kabisat Hasil

//

C o n L o } ,h a s i l :

09:46:29

05-May-08 GMT "<br>"' GMT 05-02-2005 GMT

echo gmdatei"H:i:s / / kabisat <br>" xonvexsi waklu

d-M-y T") loka1

"Tni hrtkan fAhun kabisal" ? "Ini <br>"; tahun

ke format

echo testleapYear(2001) "Ini bukan tahun kabisat

/ / Mlsa! //

waktu yang dispesifikasikan 03:30:00 05-f'eb-05

co\Lo}]' hasilr

g t . s = n k t . i m e1 4 , 3 0 , 0 , 2 , 5 , 2 0 0 5 ) ; echo gmdale("Hri:s
tir t..:j. i Pr;t r*.r"r idd v.! d., H,i4r grlhn'lr !ir{ asrp ri;$!!*$u ;r,,nilortr6:uoan'li,,.i",p'rnpil :i'l,nr';,.-J-r' ;tari{Bs.!.:nt'.r

d-M-y T",

gts);

Ioi t.h.,tt kabisat Ini bukan tahun kabisat

frMensetahui iumlah hari pada suatu bulan. Mungkin kasus.Anda ingin mengetahui jumlah hari OoaOa-suatu yang terdapat pada suatu bulan. Untuk melakukan hal

r09:46:29 05-May-08GMT i03:30:00 05-Feb-05GMT Supriyanto [supriyanto@infolinux.co.id]

w w w . i n fo l i nu x . w e b i.d

T N F O L | N U Xo 6 / 2 0 0 8 7 3

Anda mungkin juga menyukai