PHP获取当前日期最常用的方式: date('Y-m-d H:i:s',time());
一、获取毫秒值
定义:
PHP函数 microtime () 返回当前 Unix 时间戳和微秒数。
用法1:
/**
* @desc PHP获取毫秒时间戳
*/
public function getMilliseconds(){
list($s1, $s2) = explode(' ', microtime());
return (float)sprintf('%.0f', (floatval($s1) + floatval($s2)) * 1000);
}
用法2:
原理:分别记录函数开始时间和结束时间,然后时间差就是函数执行的时间?
$start_time = microtime(true);
for($i=1;$i<=1000;$i++){
echo $i.'
';
}
$end_time = microtime(true);
echo '循环执行时间为:'.($end_time-$start_time).' s';
?>
二、mysql 时间戳与日期格式的相互转换 分类:PHPMySQL
1、UNIX时间戳转换为日期用函数: FROM_UNIXTIME()
[sql] view plain copy
select FROM_UNIXTIME(1156219870);
输出:2006-08-22 12:11:10
2、日期转换为UNIX时间戳用函数: UNIX_TIMESTAMP()
[sql] view plain copy
//
public function getAllOpenid(){
// $sql='select openid,userid,idcard from a_applicant where 1=1 ';
$sql="select name,userid,idcard,UNIX_TIMESTAMP(NOW()) from a_applicant where ((UNIX_TIMESTAMP(NOW())-UNIX_TIMESTAMP(create_time)))<86400";
return $this->getORM()->queryAll($sql);
}
Select UNIX_TIMESTAMP('2006-11-04 12:23:00');
[sql] view plain copy
输出:1162614180
[sql] view plain copy
Select UNIX_TIMESTAMP(NOW());
[sql] view plain copy
[sql] view plain copy
输出当前时间戳
例:mysql查询当天的记录数:
[sql] view plain copy
$sql=”select * from message Where DATE_FORMAT(FROM_UNIXTIME(chattime),’%Y-%m-%d’) = DATE_FORMAT(NOW(),’%Y-%m-%d’) order by id desc”;
DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%S')
// 显示所有建议 //按照时间逆序排序
public function selectAllSuggest($offset, $numPerPage) {
$sql = 'select id,uid,categoryid,name,cartype,content,FROM_UNIXTIME(addtime,"%Y-%m-%d %H:%i") addtime,replycontent,rusername,FROM_UNIXTIME(replytime,"%Y-%m-%d %H:%i") replytime from byd_suggest ORDER BY addtime DESC limit' . " $offset,$numPerPage";
$rs = $this->getORM ()->queryAll ( $sql );
return $rs;
}
三、PHP方式转换:
UNIX时间戳转换为日期用函数: date()
date('Y-m-d H:i:s', 1156219870);
日期转换为UNIX时间戳用函数: strtotime()
strtotime('2010-03-24 08:15:42');
成熟的时间计算Php:
$nowTime = $_SERVER['REQUEST_TIME'] - strtotime($v['create_time']) - 24 * 3600;
7、脚本执行的时间最好使用 $_SERVER['REQUEST_TIME'];要比使用time()函数好很多