Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP中整数的数据解码_Php_Datetime - Fatal编程技术网

PHP中整数的数据解码

PHP中整数的数据解码,php,datetime,Php,Datetime,在PHP中,我将日期记录保存为字符串,以便生成“大于”、“小于”等条件;但我真的很想知道如何解码它。我想做的是这样的: 记录被保存的时刻是2014年08月06日1:30,24小时格式,因此我的整数应该是201408060130,当然我使用date()函数 但是,当涉及到解码它以将其显示回来时,如2014年8月6日1:30或其他格式,如2014年8月6日1:30,我真的陷入了思考任何解决方案的困境 我以为会是这样的: $date = date('YdmHm'); //Saving as 20140

在PHP中,我将日期记录保存为字符串,以便生成“大于”、“小于”等条件;但我真的很想知道如何解码它。我想做的是这样的:

记录被保存的时刻是2014年08月06日1:30,24小时格式,因此我的整数应该是
201408060130
,当然我使用
date()
函数

但是,当涉及到解码它以将其显示回来时,如2014年8月6日1:30或其他格式,如2014年8月6日1:30,我真的陷入了思考任何解决方案的困境

我以为会是这样的:

$date = date('YdmHm'); //Saving as 201408060130

$this->saveToDatabase($save, $mytable);

$dateDecoded = $this->getFromDatabase($mytable, $id, $theDateInteger);

$result = Date::getFormat($dateDecoded, 'YdmHm'); //Decode date format

echo $result->date('Y d/m, H:m'); //Show 2014 08/06, 1:30

PHP在Date类下有一个非常有用的方法用于此调用

下面是一个示例用法:

$datetime = DateTime::createFromFormat('YdmHm', (string)$theDateInteger);
现在,这是一个有效的datetime对象,如果需要,可以将其保存为字符串中的任何格式。例如:

echo $datetime->date('Y d/m, H:m');

这很简单,很有效。只需使用:

输出为:

2014年6月08日01:30


您的方法也很有用,但我将使用更简单、更小的方法,谢谢您。输出应该是
2014 06/08,01:30
,而不是
2014 06/08,01:08
@clami219好的捕获!它应该是
yd/m,H:i
,这是一个日期格式问题,虽然
m
表示月份,但
i
表示分钟,这让我感到非常困惑。答案已更正。一个简短的注释,在我的答案中已更正,但您的日期格式
yd/m,H:m
不正确。它应该是
yd/m,H:i
,其中
i
是分钟的日期格式语法。
$test_value = '201408060130';

echo date('Y d/m, H:i', strtotime($test_value));