Symfony2用户时区

时间:2015-07-23 13:37:50

标签: symfony timezone

我正在构建一个symfony2应用程序,用户可以在其中选择她的时区。我做了neseccary模型/表单更改以在User对象中存储时区字段。

要在特定控制器操作中应用时区,我可以使用:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<select id="Icecream" name="tabs">
  <option value="0">select from the list</option>
  <option value="double">Double Chocolate</option>
  <option value="vanilla">Vanilla</option>
  <option value="strawberry" selected>Strawberry</option>
  <option value="caramel">Caramel</option>
</select>
<button class="btn btn-success" id="resetlist">Reset List</button>

有没有办法在不必修改每个控制器/操作的情况下执行此操作?

1 个答案:

答案 0 :(得分:1)

这是一个古老的问题,但仍然适用相同的答案。

date_default_timezone_set不应以这种方式使用。如果创建Datetime实例,则时区将始终设置为symfonys默认时区。这将导致不一致,祝您好运:)

基本上,您应该创建一个自定义DateTime类型来处理时区的转换。此外,如果您确实希望在服务器上使用其他时区,请在config/parameters.yml中设置时区,以便php处理所需时区中的所有日期。

parameters:
    default_timezone: Europe/Warsaw

a nice tutorial here会向您显示您需要知道的所有内容。