Beberapa fungsi PHP bermanfaat berkenaan dengan timing / waktu (time)

Di postingan ini saya mau membagikan beberapa function php yang mungkin bermanfaat buat kamu jika kamu berurusan dengan waktu/time.

Yang pertama, function untuk mendapatkan waktu dalam bentuk milideteik/millisecond saat ini

//Millisecond saat ini
function getCurrentMillisecond(){
    return round(microtime(true) * 1000);
}

Yang kedua, function untuk mengubah milidetik menjadi tanggalan biasa

//Millisecond menjadi tanggalan biasa
function miltodate($mil){
    $seconds = $mil / 1000;
    $date = date("d-m-Y", $seconds); 
    $time = date("h:i:sa", $seconds);
    return $date . " " . $time;
}

Ketiga, function untuk mengetahui berapa lama (berapa detik, menit, jam, hari dst) kah suatu milidetik yang diinput? Hehe bingung nggak? Ini lho, misalnya kamu mau menyatakan “Si user x telah mendaftar xxx jam yang lalu” seperti itu, nah function ini bisa berguna

//Berawa wktu yang lalu?
function longTimeAgo($time){
	$time = $time / 1000;
    $time = time() - intval($time); // to get the time since that moment
    $time = ($time<1)? 1 : $time;
    $tokens = array (
        31536000 => 'tahun',
        2592000 => 'bulan',
        604800 => 'minggu',
        86400 => 'hari',
        3600 => 'jam',
        60 => 'menit',
        1 => 'detik'
    );

    foreach ($tokens as $unit => $text) {
        if ($time < $unit) continue;
        $numberOfUnits = floor($time / $unit);
        return $numberOfUnits.' '.$text.(($numberOfUnits>1)?'':'');
    }
}

Ada lagi tambahan, barangkali waktu yang ditampilkan PHP ini tidak akurat, bisa jadi karena pengaturan zona waktunya. Tambahkan baris ini di awal script php kamu untuk ngeset zona waktu yang kamu gunakan adalah zona waktu Indonesia:

date_default_timezone_set('Asia/Jakarta');

Semoga bermanfaat ya.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *