Php 日期时间值不正确:';1540564519';对于列';更新日期';在保存模型Phalcon的第1行?

Php 日期时间值不正确:';1540564519';对于列';更新日期';在保存模型Phalcon的第1行?,php,date,datetime,phalcon,phalcon-routing,Php,Date,Datetime,Phalcon,Phalcon Routing,我试图将数据保存在表中,但保存时会抛出以下错误: SQLSTATE[22007]:无效的日期时间格式:1292不正确的日期时间 保存模型第1行“更新日期”列的值:“1540564519” 评估和补救措施 评估表模式: -- -- Table structure for table `evaluation_remedy` -- CREATE TABLE IF NOT EXISTS `evaluation_remedy` ( `id` int(10) unsigned NOT NULL, `t

我试图将数据保存在表中,但保存时会抛出以下错误:

SQLSTATE[22007]:无效的日期时间格式:1292不正确的日期时间 保存模型第1行“更新日期”列的值:“1540564519” 评估和补救措施

评估表模式:

--
-- Table structure for table `evaluation_remedy`
--

CREATE TABLE IF NOT EXISTS `evaluation_remedy` (
`id` int(10) unsigned NOT NULL,
  `title` varchar(255) NOT NULL,
  `description` text NOT NULL,
  `diet` text NOT NULL,
  `is_local_food_store` tinyint(4) NOT NULL DEFAULT '0',
  `product_image` varchar(255) DEFAULT NULL,
  `product_description` text,
  `product_url` varchar(255) DEFAULT NULL,
  `importance` tinyint(4) NOT NULL DEFAULT '0',
  `is_active` tinyint(4) NOT NULL DEFAULT '1',
  `date_created` datetime DEFAULT NULL,
  `date_updated` datetime DEFAULT NULL
) ENGINE=InnoDB AUTO_INCREMENT=64 DEFAULT CHARSET=utf8;

--
-- Indexes for table `evaluation_remedy`
--
ALTER TABLE `evaluation_remedy`
 ADD PRIMARY KEY (`id`);

--
-- AUTO_INCREMENT for dumped tables
--

--
-- AUTO_INCREMENT for table `evaluation_remedy`
--
ALTER TABLE `evaluation_remedy`
MODIFY `id` int(10) unsigned NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=64;
如果需要任何其他信息,请告诉我。我很乐意分享解决方案所需的一切

存储/保存功能:

public function saveEvaluationRemedyAction(){

        // Instantiate new form for Evaluation Symptom Model
        $form = new EbEvaluationRemedyForm();

        if( $form ->isValid($this->request->getPost())){
            // Get the Evaluation Symptom id (if any)
            $id = $this->request->get( 'id', null );
            // Get existing Evaluation Symptom (if any) or create a new one
            if( null !== $id && $id !== '' ){
                $evaluationRemedy = CxEbEvaluationRemedy::findFirst( $id );
            } else {
                $evaluationRemedy = new CxEbEvaluationRemedy();
            }

            // Bind form with post data
            $form->bind( $this->request->getPost(), $evaluationRemedy );

            // Save the form with new data
            $evaluationRemedy->save();

            // Saving linked remedies in Related Remedy Table
            $remedies = $this->request->get('remedies_list');
            if($remedies){
                foreach ($remedies as $key => $remedy) {
                    $relatedRemedy = CxEbEvaluationRemedy::getIdByName($remedy);
                    $remedyObject = new CxEbEvaluationRemedyRelated();
                    $remedyObject->setEvaluationRemedyId($evaluationRemedy->getId());
                    $remedyObject->setEvaluationRelatedRemedyId($relatedRemedy['id']);
                    $remedyObject->save();
                }
            }
        } else {
            // Send error Json response
            return CxHelper::SendJsonError($form->getHtmlFormattedErrors());
        }

        // Return success
        return array( 'data' => 'Success' );
    }
如果需要任何其他信息,请告诉我。我很乐意分享解决方案所需的一切


谢谢

将其从大纪元转换为以下格式:

<?php

$date = new DateTime('@1540564519');
$formatted = $date->format('Y-m-d H:i:s');
echo $formatted; // 2018-10-26 14:35:19

如果要在datetime中保存int类型,请将列更改为int,或者将其另存为有效的datetime格式,即有效的日期。虽然在mysql中它不是有效的datetime格式。我的意思正是我假定的UNIX时间戳,因此,您可能需要检查模型中的
updated_at
列是如何定义的?谷歌在这里展示了一种典型的行为——你在使用它吗?如果是,你的设置是否正确?