我有以下格式PHP的製造日期
MM-DD-YYYY
日期我怎樣才能將它轉換爲UNIX時間在PHP
感謝
有一個小問題
$date = strtotime($_POST['retDate']);
print $date; //Prints nothing
print $_POST['retDate']; //Prints 08-18-2009
我有以下格式PHP的製造日期
MM-DD-YYYY
日期我怎樣才能將它轉換爲UNIX時間在PHP
感謝
有一個小問題
$date = strtotime($_POST['retDate']);
print $date; //Prints nothing
print $_POST['retDate']; //Prints 08-18-2009
如果格式總是這樣,我會嘗試這樣的:
list($m,$d,$y) = explode('-', '08-18-2009');
$time = mktime(0, 0, 0, $m, $d, $y);
print date('m-d-Y', $time);
至於你的榜樣,問題是功能失效。您應該檢查它像這樣:
if(($time=strtotime('08-18-2009'))!==false)
{
// valid time format
}
else
echo 'You entered an invalid time format';
使用s trtotime:
$str = "03-31-2009";
$unixtime = strtotime($str);
,或者您可以使用PHP日期obyek要做到這一點,像這樣
$tgl = "30-12-2013";
$tgl2 = DateTime::createFromFormat('d-m-Y', $tgl);
print_r($tgl2);
echo($tgl2->format('Y-m-d'));
我希望這可以幫助...
因爲這些答案,提供了評論,PHP已更新爲包含完全適合這種情況的本地函數。退房PHP's DateTime object here。這包括將按要求做的createFromFormat
方法。在這個特殊的例子:
$date = DateTime::createFromFormat('j-M-Y', $_POST['retDate']);
從那裏,你可以格式化,並根據需要或執行任何其他日期的操作:
echo $date->format('Y-m-d');
就是這樣!請記住,這僅在PHP 5.3.0
或更高版本中提供!
謝謝,mktime做的伎倆 – 2009-08-21 13:54:27