Php Set TimeZone

1

У меня есть следующий код:

$date = new DateTime(date("Y-m-d H:i:s"), new DateTimeZone('Asia/Karachi'));  
echo $date->format('Y-m-d H:i:s');

Выход: 2015-08-26 17:46:05
Фактический результат должен быть: 2015-08-26 13:46:05

Как установить часовой пояс, чтобы появился фактический выход?

Теги:
timezone
timestamp-with-timezone

3 ответа

3

используйте эту строку в своих кодах

date_default_timezone_set("Asia/Karachi"); 

как

  <?php 
    date_default_timezone_set("Asia/Karachi"); 
    echo date('d-m-Y H:i:s'); 
?>
  • 0
    это также показывает тот же результат, а не фактический
2

Метод 1 (Редактирование Php.ini)

1) Откройте файл php.ini

2) Добавьте следующую строку кода в начало файла php.ini

date.timezone = "Asia/Karachi"

3) Перезапустите php.

Примечание. Здесь можно найти список часовых поясов: http://php.net/manual/en/timezones.asia.php

Метод 2 (Использование date_default_timezone_set)

Если у вас нет доступа к файлу php.ini, вы можете использовать date_default_timezone_set("Asia/Karachi"). Просто поместите его в точку входа вашего приложения.

http://php.net/manual/en/function.date-default-timezone-set.php

  • 0
    В ini-файле абсолютно ничего не нужно менять
  • 0
    Я установил часовой пояс. но это не отображает фактическое время
Показать ещё 4 комментария
1

Лучше сохранить его в файле конфигурации, потому что, даже если вы используете ту же функцию в другом месте, вам придется повторно объявить это утверждение.

  date_default_timezone_set("Asia/Karachi"); 

Если вы используете какие-либо фреймворки, такие как yii, CI или cake php.. держите эту строку в файле index.php, который в основном позже загружает остальную часть фреймворка.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню