Функція Php Date не працює в реальному сервері

i am displaying the current date & time using PHP in localhost using below date function

<?php
echo date('Y-m-d H:i:s');
?>

та відображення виводу у вигляді 2013-06-24 14:45:13 Але коли я запускаю вищевказаний код PHP на сервері в реальному часі, він відображає вивід як 2013-06-24 06:47:28 . Отже, будь-який один розповість, як можна відображати дату і час у 24-годинному форматі на сервері.

3
Ймовірно, це питання часової зони. Використовуйте echo date ('Y-m-d H: i: s T'); , щоб побачити, на що має встановлений часовий пояс кожного сервера.
додано Автор John Conde, джерело
Якщо він працює під час тестування, але не у виробництві, то, ймовірно, це або a) Ваш часовий пояс встановлено неправильно. Перевірте php.ini, що ви встановили date.timezone або b) ваш сервер встановлено не в той час.
додано Автор Doug, джерело
додати date_default_timezone_set ("ваш часовий пояс") на першому рядку, список часових поясів valide >
додано Автор ikhsan, джерело

8 Відповіді

Це питання часового поясу. Перевірте

date_default_timezone_get();

За допомогою date_default_timezone_set ('YOUR_TIMEZONE'); можна встановити часовий пояс.

5
додано
Збережено мій день. Дякую :)
додано Автор Kamal, джерело

Схоже, ваш сервер не має тієї ж часової зони, що й ваш локальний хост.

Або, можливо, час просто не встановлений.

2
додано

Здається, проблема з часовими поясами або налаштування неправильно встановлені на сервері, оскільки теоретично вона повинна відображати час і дату сервера

Regarding Timezone issue, see this guide for date_default_timezone_set http://php.net/manual/en/function.date-default-timezone-set.php

2
додано

Під час запуску цього коду echo date ('Ymd H: i: s'); у localhost він приймає ваш системний час, але коли ви запускаєте echo date ('Ymd H: i : s '); на сервері, на якому він працює, використовує часовий пояс SERVER. Використовуйте цю функцію date_default_timezone_get() . Вона повертає часовий пояс за замовчуванням, який використовується всіма функціями дати/часу в сценарії, і ви можете використовувати його для встановлення часового поясу.

1
додано

Ти можеш

date_default_timezone_set('America/Los_Angeles');

або

date_default_timezone_set('Egypt/Cairo');

абоwhat ever between ('')

1
додано

Використовуйте DateTime :

<?php

$date = new DateTime('now'); 
echo $date->format("Y-m-d H:i:s");

?>

Крім того, відображена дата/час є сервером, тому ви також повинні встановити часовий пояс:

<?php

$timezone = DateTimezone('{Continent}/{City}');
$date = new DateTime('now', $timezone); 
echo $date->format("Y-m-d H:i:s");
?>
1
додано

Функція дати приймає поточну дату та час. Тепер він буде відображати тільки дату і час, які будуть відображатися на сервері.

1
додано

Використовуйте date_default_timezone_set для відправленого часового поясу з вашого сценарію.

You can find more info here: http://php.net/manual/en/function.date-default-timezone-set.php

1
додано
Ukrainian PHP comunity
Ukrainian PHP comunity
885 учасників

dev-ua/php