php将日期转换为mktime函数
我发布日期输入php将日期转换为mktime函数,php,datetime,mktime,Php,Datetime,Mktime,我发布日期输入$\u post['date']格式为2013/11/22和时间$\u post['time']格式为上午10:10。现在,我需要将两个输入都放入mktime函数中,如下所示: mktime(10, 10, 0, 11, 22, 2013); 如何创建此功能?您只需使用函数即可 $array = explode('/', $_POST['date']); $arraytwo = explode (':', $_POST['time']); 这样,您将有两个数组来填充mktime
$\u post['date']
格式为2013/11/22
和时间$\u post['time']
格式为上午10:10
。现在,我需要将两个输入都放入mktime
函数中,如下所示:
mktime(10, 10, 0, 11, 22, 2013);
如何创建此功能?您只需使用函数即可
$array = explode('/', $_POST['date']);
$arraytwo = explode (':', $_POST['time']);
这样,您将有两个数组来填充mktime函数
//$_POST['date'] = '2013/11/22';
//$_POST['time'] = '10:10 AM';
$dateTime = "{$_POST['date']}{$_POST['time']}";
$timeStamp = strtotime($dateTime);
if($timeStamp===false):
throw new \Exception("The date or time format is not valid!");
endif;
其他人提供的解决方案也可以完成这项工作。您可以使用任意格式创建DateTime
对象。然后,您可以使用该对象获取时间戳(或以另一种方式格式化日期):
我的解决方案中的格式(
Y/m/dh:ia
)要求输入的所有部分都使用前导零(例如,2013-01-01 01:01 AM
)。如果输入不使用前导零,则必须更改输入格式。您可以在中看到所有受支持的格式字符。您无需使用mktime。是的,条目是字符串,那么使用strotime函数更为一致
//$_POST['date'] = '2013/11/22';
//$_POST['time'] = '10:10 AM';
$dateTime = "{$_POST['date']}{$_POST['time']}";
$timeStamp = strtotime($dateTime);
if($timeStamp===false):
throw new \Exception("The date or time format is not valid!");
endif;
这不管用。我看到错误:
无效的日期或时间
查看演示:@Alex.DX抱歉,我在格式上犯了两个错误(M
而不是M
和-
而不是//code>)。如果在代码中用Y/m/dh:ia
替换格式,它应该可以正常工作!是的,现在起作用了,但这在公历日期起作用。我需要为阿拉伯语到公历时间戳日期定制mktime
函数。我需要这个mktime(10,10,0,11,22,2013)
对于阿拉伯日期,我将mktime
更改为ARmktime
(自定义函数),这起到了作用。您的评论不太清楚。您还想解析阿拉伯日期并获取时间戳吗?如果是这样,请更新您的问题,并附上一个例子,因为我不熟悉阿拉伯日期。可能重复