我如何将j / M / ydate格式更改为时间戳?

我试图转换为时间戳,但不工作,我的代码如下

$date = $objPHPExcel->getActiveSheet()->getCell('A' . $x)->getFormattedValue();//output value is 9/Feb/16 echo strtotime($date);//return value is empty 

这是返回空值。 我想比较Excel工作表date和PHP返回date。 Excel工作表返回date是这样的-> 9 / Feb / 16

如果单元格中的值是MS Excel序列化时间戳,则可以从单元格获取“原始”值

 $date = $objPHPExcel->getActiveSheet() ->getCell('A' . $x)->getValue(); 

应该在2016年2月2日返回一个42409的数字

然后使用内置的date/时间转换函数将其转换为unix时间戳或PHP DateTime对象

 $date = PHPExcel_Shared_Date::ExcelToPHP($date); // returns a unix timestamp echo date('Ymd H:i:s', $date); 

要么

 $date = PHPExcel_Shared_Date::ExcelToPHPObject($date); // returns a DateTime object echo $date->format('Ymd H:i:s'); 

你只需要将斜杠改为减号,所以strtotime会识别你的$ date作为date

 $date = str_replace('/','-',$date); echo strtotime($date); //output 1454976000 

live sample

 $d = DateTime::createFromFormat('j/M/y', '9/Feb/16'); echo $d->getTimestamp();