Php symfony DATETIMETOTIMESTAMPT变压器
我正在尝试获取unix时间戳,但似乎无法获取它。 我有一个表单,用户需要在其中选择日期和时间Php symfony DATETIMETOTIMESTAMPT变压器,php,symfony,Php,Symfony,我正在尝试获取unix时间戳,但似乎无法获取它。 我有一个表单,用户需要在其中选择日期和时间 $builder->add('time', 'datetime', array( 'input' => 'timestamp', )) 更多信息: 但我只有一个数组。。当我需要一个带有unix时间戳的整数时 $time = $formData['time']; print_r($time); 输出: Array( [date] =>
$builder->add('time', 'datetime', array(
'input' => 'timestamp',
))
更多信息:
但我只有一个数组。。当我需要一个带有unix时间戳的整数时
$time = $formData['time'];
print_r($time);
输出:
Array(
[date] => Array(
[year] => 2015
[month] => 6
[day] => 7
)
[time] => Array(
[hour] => 6
[minute] => 6
))
当我需要类似1443197171的东西时,我假设您正在查看从表单返回的
POST
数据,它不同于Symfony表单组件提供的标准化数据
可视化表示由字段的小部件
选项控制,因此在您的情况下,您可能希望将其设置为单文本
,如下所示:
$builder->add('time', 'datetime', array(
'input' => 'timestamp',
'widget' => 'single_text',
));
即使这样,您也可能会返回一个包含单独的date
和time
条目的数组。您要做的是从表单组件获取“data”属性,例如
$form->get('time')->getData();
这将获取字段组件,然后检索数据。作为链接到的条目,状态为:
从表单返回的值也将规范化为此格式
此时,最好查看组件的格式。只需让它们选择datetime并使用
$dt->format('U')
$time=$formData['time']->format('U');给我错误:在非对象上调用成员函数format()。您需要设置'input'=>'datetime'
我试过了,它仍然是一个数组…您确定编辑了正确的文件吗?。。。这似乎不可能