在php中将字符串转换为不带日期的时间

use*_*123 -3 php

我正在将字符串“11:00 PM”解析到数据库中。我想将字符串转换为军事时间 23:00 并写入数据库。

我尝试了以下方法:

$traveltime = "11:00 PM";
$contraveltime = date(strtotime("%H:%i",'$traveltime')); 
Run Code Online (Sandbox Code Playgroud)

我收到错误

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
Run Code Online (Sandbox Code Playgroud)

第 332 行是第二个代码行所在的位置。

我该如何进行这项工作?

Don*_*nic 5

格式参数属于函数date,而不是strtotime。并且您需要消除 周围的单引号$traveltime,否则您将只评估文字字符串 '$traveltime'。此外,这些%字符不应在格式字符串中使用。这些用于 等printf,这里不需要。

$contraveltime = date("H:i", strtotime($traveltime));
Run Code Online (Sandbox Code Playgroud)