问题描述
我正在尝试确定传递到方法中的字符串是否与“ YYYYMMDD HH:MM”的格式匹配。我可以将字符串转换为Carbon
日期对象,如果这有助于验证逻辑。我如何最好地确定格式是否符合我的期望?
解决方法
您可以使用here将输入转换为UNIX时间戳,然后使用所需的格式创建新的日期字符串,并将输入与该测试日期字符串进行比较。
<?php
$dateFormat = 'Ymd h:i';
$dateInput = '20200827 10:07';
$time = strtotime($dateInput);
$testDate = date($dateFormat,$time);
if($dateInput==$testDate)
{
echo 'Valid format'.PHP_EOL;
}
else
{
echo 'Invalid format'.PHP_EOL;
}