像不规则的日期时间格式,可以使用varchar类型.这种可以存储任何字符串类型的表示格式,但就是对于后期处理操作支持不太好,比如格式的format.
创新互联建站专注于应城企业网站建设,响应式网站开发,商城网站建设。应城网站建设公司,为应城等地区提供建站服务。全流程按需开发网站,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务
对于规则格式,可以使用datetime类型.可以完美支持后期的format转义.
你这里的11:00:00
这两个:是不同的,所以需要存储为varchar.具体规则的日期时间格式你可以搜一下,一般有
年-月-日 时:分:秒
日/月/年 时:分:秒
有很多的.
从数据库取出数据后,使用date函数就好。
date("Y-m-d H:i",$unixtime);
$unixtime //时间戳
一般有两种访问:
方法一:
$sql="INSERT INTO `test` (`id`,`content`,`datetime`)values(NULL,'hello',now())";
$query=mysql_query($sql); //执行sql语句
//这种方法,你datetime字段要设计成date类型,now() 是mysql数据库提供的一个获取当前时间函数
方法二:
$sql="INSERT INTO `test` (`id`,`content`,`datetime`)values(NULL,'hello',".time().")";
$query=mysql_query($sql); //执行sql语句
//这种方法:datetime字段设计成int(10)类型。time()是php提供获取时间戳的函数。
推荐使用方法二,因为这种方式,一.排序速度快,二.方便转换时间区。主流的开源程序都有采用这方式。像discuz phpwind dedecms等等。
从截图代码看,问题的关键点在于:将 $_POST["Start_date"] 和 $_POST["Start_time"] 组合,再进行转换。
由于代码中没有提供上述两个变量的格式,假设两者都是字符型:
$_POST["Start_date"] = '2018-1-1';
$_POST["Start_date"] = '12:00:00';
则可以用以下代码:
$start1 = date('Y-m-d H:i:s',strtotime($start_date . ' ' . $start_time));
示例:
?php
date_default_timezone_set('PRC'); //默认时区
$date = "2018-01-01";
$time = "12:00:00";
$start1 = date('Y-m-d H:i:s',strtotime($date . ' ' . $time));
echo "当前日期:",$start1,"br";
运行截图:
php 获取当前时间戳的函数是 time()
1,如果你想保存在1.txt的文件里
$t=date('Y-m-d H:i:s' ,time());
file_put_contents(1.txt,$t);
2,如果要保存在数据库里就用相应的sql语句把$t写入数据库。若要存入数据库最好用时间戳 $t=time(); 而不要使用date函数;这样有利于快速的写入和读取。需要调用的时候才用date函数格式化;
希望对你有所帮助。