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

avatar HabibulUmam
@HabibulUmam

59 Kontribusi 10 Poin

Dipost 5 tahun yang lalu

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> &lt;?php date_default_timezone_set('Asia/Jakarta'); echo $this-&gt;post_model-&gt;get_time_ago(strtotime($post-&gt;updated_at)); ?&gt; </pre>

avatar HabibulUmam
@HabibulUmam

59 Kontribusi 10 Poin

Dipost 5 tahun yang lalu

Login untuk ikut Jawaban