www.state-it.info

Gran base de respuestas a las preguntas de los desarrolladores
Header decor

¿por Qué sólo si se vuelve a invocar se devuelve correctamente la duración de?

Ampleev 2018-07-31 11:32:54

es Muy extraña la situación отловил al trasladarse con дебиан en центос a otro servidor..

En вьюхе hay salida de tiempo, un:

var_dump(HtmlPurifier::process(NewTime::new_time(strtotime('2018-06-15 13:26:27'))));
var_dump(HtmlPurifier::process(NewTime::new_time(strtotime('2018-06-15 13:26:27'))));


La clase NewTime cuando hace ya tiempo, simplemente tomó listo para la traducción en un formato legible la fecha de:

<?php

namespace app\models;


class NewTime{

    public static function new_time($a) { // преобразовываем время в нормальный вид
        date_default_timezone_set('Europe/Moscow');
        $ndate = date('d.m.Y', $a);
        $ndate_time = date('H:i', $a);
        $ndate_exp = explode('.', $ndate);
        $nmonth = array(
            1 => 'января',
            2 => 'февраля',
            3 => 'марта',
            4 => 'апреля',
            5 => 'мая',
            6 => 'июня',
            7 => 'июля',
            8 => 'августа',
            9 => 'сентября',
            10 => 'октября',
            11 => 'ноября',
            12 => 'декабря'
        );

        foreach ($nmonth as $key => $value) {
            if($key == intval($ndate_exp[1])) $nmonth_name = $value;
        }

        if($ndate == date('d.m.Y')) return 'сегодня в '.$ndate_time;
        elseif($ndate == date('d.m.Y', strtotime('-1 day'))) return 'вчера в '.$ndate_time;
        else return $ndate_exp[0].' '.$nmonth_name.' '.$ndate_exp[2].' в '.$ndate_time;
    }

}


así, en вьюхе aparentemente debe aparecer el 2 valores iguales de tales:

El 15 de junio de 2018 en 13:26
El 15 de junio de 2018 13:26

pero la muestra no es así, y así:
El 15 de junio de 2018 16:26
El 15 de junio de 2018 13:26

es decir, la primera vez que por alguna razón плюсует 3 horas, y al segundo ya no existe ) Lo crees? Por que así?

Hasta пофиксил simplemente soltero de llamada en el comienzo y en el final, se devuelve correctamente la duración de..

dmitrylee 2018-07-31 11:45:53

Probablemente no está configurada la zona horaria


Total answers: 1

kruslan 2018-07-31 14:24:19

Debido a que el primer reto va a
date_default_timezone_set('Europe/Moscow');

Ampleev 2018-08-10 19:32:12

todavía no está claro, la llamada a la misma en la primera línea


Ampleev 2018-08-10 19:32:44

se obtiene en ambos casos, el primero cumple con esta línea


kruslan 2018-08-12 16:26:00

Bueno, ¿qué no se anulan??? Vale la pena дефолтная de tiempo de la zona. Se llama código:

NewTime::new_time(strtotime('2018-06-15 13:26:27'))


Primero se inicia strtotime (que utiliza таймзоны), luego NewTime::new_time, en el que таймзона cambia. Por lo tanto, la segunda llamada ya correcto.


Ampleev 2018-08-14 18:58:33

ahora ha llegado, gracias )


Preguntas relacionadas:

Footer decor

© www.state-it.info | Base of answers to questions for developers and programmers.