我正在使用Zend和Doctrine並使用jQuery日曆以dd/mm/yyyy格式收集日期。我需要格式化它以yyyy/mm/dd形式輸入MySql。使用Zend和Doctrine的日期格式
我最近開始使用Zend和Doctrine,所以不知道這個格式應該在哪裏以及如何完成。可以請別人幫我嗎?
我正在使用Zend和Doctrine並使用jQuery日曆以dd/mm/yyyy格式收集日期。我需要格式化它以yyyy/mm/dd形式輸入MySql。使用Zend和Doctrine的日期格式
我最近開始使用Zend和Doctrine,所以不知道這個格式應該在哪裏以及如何完成。可以請別人幫我嗎?
我勸你jQuery的datepiker使用這種可能性與意大利的定位,纔能有在意大利的日曆,但設置的格式datepiker YYYY-MM-DD,所以我在將數據保存在數據庫中的任何更改都沒有問題。
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js"></script>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/jquery-ui.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.5/i18n/jquery.ui.datepicker-it.js"></script>
//DatePicker
$('.inputDate').datepicker({
dateFormat: 'yy-mm-dd'
});
OR
現在它發生,我認爲如果你堅持你的選擇,你可以使用原則的行爲:http://www.doctrine-project.org/blog/using-behaviors-to-share-relationship-properties
看的例子setPassword。
您可以實現這樣的事情:
class NameModel extends BaseNameModel
{
public function setDate_name($date_name)
{
list($d, $m, $y) = explode("-", $date_name);
$newDateName = $y."-".$m."-".$d;
$this->_set('date_name', $newDateName);
}
}
我給你的PHP函數將採取日期爲dd/mm/yyyy並返回yyyy/mm/dd日期。
function dateconvert($dateOriginal)
{
$dateOriginal = preg_replace("/[^0-9\/]/","",$dateOriginal); //sanitizing
$temp = explode("/",$dateOriginal);
$dateNew = $temp[2]."-".$temp[1]."-".$temp[0];
$dateNew = date("Y-m-d", strtotime($dateNew));
return $dateNew;
}
我不認爲你需要Zend Framework或Doctrine來做到這一點。你可以只寫類似於以下,使用正則表達式:
$output = preg_replace('#(\d+)/(\d+)/(\d+)#', '\3/\2/\1', $jQueryInput);
如果你想要一個不那麼「立竿見影」的解決方案(即,更可擴展),你也可以使用一個date
/strtotime
組合。
希望幫助,
這是可能的,但我不希望日期在輸入字段中顯示爲yyyy-mm-dd。我想要一個更友好的dd/mm/yyyy類型然後格式化它。 – FFSS
這些都是設計選擇,我喜歡你有一個意大利開發人員使用zend和教條,我所描述的是我的選擇。 我認爲,當用戶使用彈出式日曆不注意存儲在輸入字段中的值。 – JellyBelly
添加另一種方法! ;) – JellyBelly