Postingan lainnya
Masalah waktu pada postingan terbaru
setiap postingan baru kenapa waktu nya tidak akurat ? padahal sudah saya refresh berkali-kali, baru bener jika saya buat postingan baru lagi.
mohon bantuan dan koreksi nya,,, ini beberapa kode saya dan tampilan masalahnya
function get_time_ago( $time )
{
date_default_timezone_set('Asia/Jakarta');
$time_difference = time() - $time;
var_dump($time_difference."=".$time);
if( $time_difference < 1 ) { return 'less than 1 second ago'; }
$condition = array( 12 * 30 * 24 * 60 * 60 => 'year',
30 * 24 * 60 * 60 => 'month',
24 * 60 * 60 => 'day',
60 * 60 => 'hour',
60 => 'minute',
1 => 'second'
);
foreach( $condition as $secs => $str )
{
$d = $time_difference / $secs;
if( $d >= 1 )
{
$t = round( $d );
return 'about ' . $t . ' ' . $str . ( $t > 1 ? 's' : '' ) . ' ago';
}
}
}
terimakasih
Tanggapan
bisa dijelaskan di atas maksud "tidak akurat" nya apa
btw ambil kode "ago" nya dari mana, jangan sampai bukan kode yang benar yang diambil, coba perhatikan lagi sumbernya
tidak akurat maksudnya, setelah beberapa menit tampilannya tetap "less than 1 seconds ago", tapi kalo buat postingan baru langsung kembali akurat waktunya. menampilkan data yang faktual
ahh,, udah ketemu masalahnya. ternyata set default zone juga harus diletakkan di layoutnya,gk hnya di model. makanya nilai time() dengan $time beda.
terima kasih HabibulUmam, tolong dituliskan di "jawaban" ya solusinya dan ditandai sebagai jawaban yang benar
1 Jawaban:
Jawaban Terpilih
kesalahan itu muncul dikarenakan waktu yang diambil berbeda. pengaturan waktu dari asalnya yaitu paramater, dan pengaturan waktu dari model.
cara yang saya lakukan diatas adalah baru mengubah timezone pada model, sedangkan dari parameter belum saya set timezone nya. gak cukup hanya di dalam fungsi yang kita buat di model.
saya juga menambahkan timezone di tempat saya memanggil fungsi model.
<pre> <?php date_default_timezone_set('Asia/Jakarta'); echo $this->post_model->get_time_ago(strtotime($post->updated_at)); ?> </pre>