2016-10-18 25 views
-4

我正在將字符串「11:00 PM」解析爲數據庫。我想在23:00將字符串轉換爲軍事時間並寫入數據庫。將字符串轉換爲時間,但不包含php中的日期

我試着用下面的:

$traveltime = "11:00 PM"; 
$contraveltime = date(strtotime("%H:%i",'$traveltime')); 

我得到錯誤332

A PHP Error was encountered 
Severity: Warning 
Message: date() expects parameter 2 to be long, string given 
Filename: views/addtrip_individual.php 
Line Number: 332 

行是第二行代碼。

我該如何做這項工作?

+1

你可能想看看[日期時間:: createFromFormat()](http://php.net/manual /en/datetime.createfromformat.php) –

+0

[將此字符串轉換爲時間戳PHP]可能的重複(http://stackoverflow.com/questions/19346858/convert-this-string-to-timestamp-php) –

+0

也無關緊要, 23:00不是24小時的軍事時間。 2300是軍事時間。 – apokryfos

回答

2

請開始看date手冊。一個簡單的方法,那我就用的是:

echo date("G:i", strtotime("3:00 PM")); // 15:00 

由於1500是軍事的時候,不15:00,你可能需要做:

echo date("Gi", strtotime("3:00 PM")); // 1500 
0

也許是錯誤正是你打電話的方式功能 嘗試這種方式

$traveltime = "11:00 PM"; 
$contraveltime = date('H:i', strtotime($traveltime)); 
+0

謝謝!這工作,我只是錯誤地定位了元素! – user396123

3

format參數在date功能所屬,而不是在strtotime。並且您需要消除$traveltime附近的單引號,否則您只需評估字符串'$ traveltime'。此外,格式字符串中不應使用%字符。這些用於printf等,這裏不需要。

$contraveltime = date("H:i", strtotime($traveltime)); 
0

它顯示錯誤,因爲日期函數第一個參數必須日期格式

但你給出的strtotime功能

正確的結果,請按照下面的代碼

$traveltime = "11:00 PM"; $contraveltime = date('H:i',strtotime($traveltime)); echo $contraveltime;

進出放將如下所示代碼

23:00

現在你$ contraveltime存儲到數據庫

感謝

相關問題