存储在数据库中的时间是在选定的

时间:2016-10-05 06:49:45

标签: php symfony

我正在研究Symfony 2.7中的一个项目。

我们遇到了以下问题:

在某些地方,用户必须选择活动或提醒等的日期和时间。 他们可以使用基础datetimepicker选择它。

请求发送的数据似乎很好: [title => Vermifuge,date => 05.10.2016 16:00,pet => 22,description => ,renewable => 1,delay => 3个月,nextDate => 05.01.2017 16:00,active => 1,_token => QTvz3ykjcngQh2Y5SvW5KWdO2D35Ue8m8CfFtZBQxDc](来自symfony工具栏的c / c)

但是在控制器中我转储了值:

    $this->setup($request);
    $entity = $this->findOrThrowNotFound($id);

    $this->denyAccessUnlessGranted('edit', $entity->getPet(), 'Unauthorized access!');

    $editForm = $this->createCreateForm($entity);
    $editForm->handleRequest($request);
    dump($editForm['date']);
    dump($editForm['date']->getData());

第一次转储是:

Form {#2369 ▼
-config: FormBuilder {#2370 ▶}
-parent: Form {#2363 ▶}
-children: OrderedHashMap {#2371 ▶}
-errors: []
-submitted: true
-clickedButton: null
-modelData: DateTime {#2336 ▶}
-normData: DateTime {#2336 ▶}
-viewData: "05.10.2016 16:00"
-extraData: []
-transformationFailure: null
-defaultDataSet: true
-lockSetData: false
}

第二个:

DateTime {#4733 ▼
+"date": "2016-10-05 14:00:00.000000"
+"timezone_type": 1
+"timezone": "+00:00"
}

所以在某个时刻,时间会改变。

在我的phpinfo()中我有:

启用日期/时间支持

“Olson”时区数据库版本2016.3

时区数据库内部

默认时区Europe / Zurich

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

看起来您的数据库的时间与服务器不同,请在您的数据库中尝试此查询:

add_action( 'woocommerce_before_calculate_totals', 'add_custom_price' );

function add_custom_price( $cart_object ) {
    $custom_price = 10; // This will be your custome price  
    foreach ( $cart_object->cart_contents as $key => $value ) {
        $value['data']->price = $custom_price;
    }
}

然后尝试从php转储它:

SELECT now();

希望它能帮到你......