Мне интересно, можем ли мы также использовать init_set()
Функция для установки времени по умолчанию.
init_set('date.timezone', 'Europe/Edinburgh');
Причиной, по которой я это задал, был еще один вопрос, с которым я столкнулся в книге. И ответ только А.
Книга не так?
Должно быть А и С, верно?
Спасибо
Также есть вариант D: использовать date_default_timezone_set
. Функция, на которую вы ссылаетесь в C, на самом деле ini_set
. Итак, три способа:
добавить строку в php.ini:
date.timezone = "Europe/Edinburgh"
используйте ini_set:
ini_set('date.timezone', 'Europe/Edinburgh');
использовать date_default_timezone_set:
date_default_timezone_set('Europe/Edinburgh');
Что нужно отметить о вариантах 2&3 заключается в том, что они должны вызываться каждый раз, когда вы запускаете скрипт. Поэтому, если вам нужно изменить часовой пояс для каждого запускаемого вами скрипта, проще использовать опцию 1 (при условии, что у вас есть доступ для редактирования к php.ini).
Что касается варианта B, я полагаю, что теоретически это может сработать, но вы действительно хотите играть со временем вашей системы? (подсказка: нет).
Суть этого вопроса не в самом init_set (), а в указанном значении. Проверьте доступный часовой пояс от Вот. Это будет излучать E_WARNING Неверное значение date.timezone ‘Европа / Эдинбург’