首先,我在将日期输入数据库时遇到了问题 see here .现在我无法以正确的格式将其输入数据库。 这是我的代码:
public function editAction()
{
if($this->_request->getParam('id')){
$id = $this->_request->getParam('id');
$data = $this->_evtObj->selectOneRow($id);
// initialize the form
//var_dump($data);
$form = new JS_Form_EventForm();
$array = $data->toArray();
//$locale = Zend_Registry::get('locale');
$locale = new Zend_Locale();
$date1 = new Zend_Date($locale);
$date1->set($array[0]['evt_startdate']);
$array[0]['evt_startdate'] = $date1->get();
$array[0]['evt_enddate'] = date('%d-%m-%Y',(string)$array[0]['evt_enddate']);
$form->populate($array[0]);
$this->view->form =$form;
}
如您所见,它使用数据库中的日期填充表单。在数据库中,日期保存为 2010-01-15。正如您在上面的示例中看到的,我尝试了两件事:
locale = new Zend_Locale();
$date1 = new Zend_Date($locale);
$date1->set($array[0]['evt_startdate']);
$array[0]['evt_startdate'] = $date1->get();
这显示日期如下:'1262300400'
和:
$array[0]['evt_enddate'] = date('%d-%m-%Y',(string)$array[0]['evt_enddate']);
这显示日期如下:'%01-%01-%1970'
我希望日期显示为 dd-mm-yyyy
如何处理?所有这些约会生意都让我发疯。
我正在运行 zf 1.9.6
有什么想法吗?
最佳答案
我建议使用这样的东西
$date = new Zend_Date($array[0]['evt_startdate'],Zend_Date::DATES);
$array[0]['evt_startdate'] = $date1->toString('dd-MM-YYYY');
关于php - zend 语言环境让我紧张 : wrong datepresentation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2004872/