Timezone (zona waktu) pada software adalah pengaturan zona waktu untuk aplikasi yang berjalan. Pengaturan ini berguna agar zona waktu antara aplikasi PHP yang berjalan pada server dan pengguna aplikasi bisa sejalan dan tidak mengalami perbedaan. Selain itu, pengaturan timezone merupakan hal yang wajib sejak rilis PHP 7. PHP akan menampilkan pesan error apabila pengaturan timezone belum dideklarasikan. Artikel ini akan menjelaskan beberapa cara untuk mengeset Timezone Indonesia pada PHP Native, Laravel dan Codeigniter.
Daftar Timezone Indonesia
Sebelum memulai pengaturan pada PHP, kita akan membahas daftar Time Zone yang ada di Indonesia.
- Asia/Jakarta – UTC+7 untuk Waktu Indonesia Barat (WIB). Timezone ini meliputi kota besar seperti Medan, Jakarta, Yogyakarta, Surabaya.
- Asia/Makassar atau Asia/Ujung_Pandang – UTC+8 untuk Waktu Indonesia Tengah (WITA). Timezone ini meliputi kota besar seperti Denpasar, Lombok, Makasar, Ujung Pandang.
- Asia/Jayapura – UTC+9 untuk Waktu Indonesia Timur (WIT). Timezone ini meliputi kota besar seperti Jayapura, Ambon Merauke.
Mengatur Timezone pada PHP Native
Anda harus mendeklarasikan timezone pada line atau baris teratas di script PHP, sehingga PHP tidak menampilkan warning/error. PHP menyediakan fungsi date_default_timezone_set() untuk mengeset timezone.
<?php /* set default timezone */ date_default_timezone_set("Asia/Jakarta");Mengatur Timezone pada Laravel
Laravel menggunakan library bernama Carbon untuk menangani pengaturan waktu pada sistem. Saat anda selesai melakukan instalasi laravel, framework ini akan menggunakan UTC sebagai timezone default. Untungnya, laravel memberikan kemudahan untuk melakukan konfigurasi waktu, terutama pengaturan timezone. Untuk mengeset timezone Indonesia pada laravel, buka file app/config/app.php lalu ubah pengaturan timezone di line 70 (untuk Laravel 8).
'timezone' => 'Asia/Jakarta',Jangan lupa untuk melakukan perintah artisan untuk menghapus cache pengaturan, sehingga laravel dapat mengenali pengaturan baru :
php artisan cache:clearMengatur Timezone pada Codeigniter 2/3
Codeigniter secara default belum mendukung pengaturan timezone, jadi harus dirubah secara langsung menggunakan date_default_timezone_set() pada file index.php. Buka file index.php dan tambahkan date_default_timezone_set("Asia/Jakarta"); pada baris teratas setelah tag <?php.
Having looked around a lot including links from this page i found this great article, using moment timezone:
//www.webniraj.com/2016/11/23/javascript-using-moment-js-to-display-dates-times-in-users-timezone/
To summarise it:
Get the user's timezone
var tz = moment.tz.guess(); console.info('Timezone: ' + tz);Returns eg: Timezone: Europe/London
Set the default user timezone
moment.tz.setDefault(tz);Set custom timezone
moment.tz.setDefault('America/Los_Angeles');Convert date / time to local timezone, assumes original date/time is in UTC
moment.utc('2016-12-25 07:00').tz(tz).format('ddd, Do MMMM YYYY, h:mma');Returns: Sun, 25th December 2016, 7:00am
Convert date/time to LA Time
moment.utc('2016-12-25 07:00').tz('America/Los_Angeles').format('ddd, Do MMMM YYYY, h:mma');Returns: Sat, 24th December 2016, 11:00pm
Convert from LA time to London
moment.tz('2016-12-25 07:00', 'America/Los_Angeles').tz('Europe/London').format( 'ddd, Do MMMM YYYY, h:mma' );Returns: Sun, 25th December 2016, 3:00pm
date_default_timezone_set("Asia/Jakarta"); thanks mastah
kalo di php kan kyk gini
$timeNow = date('H:i');
17-03-2016 16:06
Kaskus Addict Posts: 1,625
Quote: Original Posted By Kacank87►mau tanya gan set timezone di javascript gmn ya ? date_default_timezone_set("Asia/Jakarta"); thanks mastah
kalo di php kan kyk gini
$timeNow = date('H:i');
Bukanya otomatis ngikut setting komputer client ya?
convert ke other timezone nemu disini :
//stackoverflow.com/questions/10087819/convert-date-to-another-timezone-in-javascript
17-03-2016 22:56
Format timezone indonesia untuk wilayah WIB, WITA dan WIT di PHP -
Ketika membuat suatu aplikasi tentunya ada inputan yang, menyertakan waktu input sesuai dengan jam yang ada di komputer, jadi bisa mengetahui dengan jelas data di input di tanggal berapa dan di jam berapa.
Sekali waktu saya pernah menemukan case jam dan tanggal hasil input tidak sesuai dengan yang ada di laptop, nah ternyata permasalahannya adalah timezone yang ada di PHP, karena indonesia memiliki time zone yang berbeda yakni WIB, WITA dan WIT meka perlu penyesuaian untuk settingan
timezone di aplikasi yang anda buat.
Untuk mengaplikasikan timezone di PHP anda harus meperhatikan berada di timezone mana anda berada, WIB kah? WITA kah? atau WIT kah? sebab masing2 settingan timezone berbeda untuk masing masing wilayah.
Kali ini saya akan membahasnya dengan jelas, berikut adalah format timezone di PHP yang berlaku di indonesia.
Format timezone Waktu Indonesia Barat (WIB)
Untuk format waktu indonesia bagian barat, yang menjadi acuannya adalah kota Jakarta, maka anda bisa menambahkan kode berikut ini.
<?php date_default_timezone_set('Asia/Jakarta'); ?>Kode tersebut berlaku untuk anda yang berada di wilayah indonesia bagian barat.
Format timezone Waktu Indonesia Tengah(WITA)
Untuk format waktu indonesia bagian tengah, yang menjadi acuannya adalah kota Ujung Pandang, maka anda bisa menambahkan kode berikut ini.
<?php date_default_timezone_set('Asia/Ujung_Pandang'); ?>Kode tersebut berlaku untuk anda yang berada di wilayah indonesia bagian tengah.
Format timezone Waktu Indonesia Timur(WIT)
Untuk format waktu indonesia bagian timur, yang menjadi acuannya adalah kota Ujung Jayapura, maka anda bisa menambahkan kode berikut ini.
<?php date_default_timezone_set('Asia/Jayapura'); ?> Kode tersebut berlaku untuk anda yang berada di wilayah indonesia bagian timur.
Nah dari kode tersebut anda bisa menentukan format timezone mana yang anda butuhkan sesuai dengan timezone dimana anda tinggal, semoga tulisan singkat ini bisa berguna untuk saya dan anda yang membacanya, jika tulisan ini bermanfaat jangan sungkan untuk
membagikannya.
Selamat Mencoba