php 日期时间处理函数小结

yipeiwu_com6年前PHP代码库
php 计算小时数并化整为零
复制代码 代码如下:

/* Author: 杨宇 yangyu@sina.cn */
//参数$hours_min为数组,数组的格式为1:10,返回为1小时
/*
例如:
$hours_min[0] = '1:10';
$hours_min[1] = '2:30';
echo hours_sum($hours_min);

输入为4,也就是合计4小时

*/
function hours_sum($hours_min){

if (!is_array($hours_min)) return false;

$tmp_arr = array();
foreach ($hours_min as $v){
$tmp_arr = explode(':',$v);
$hour[] = $tmp_arr[0];
$min[] = $tmp_arr[1];
}

$hours = array_sum($hour);
$mins = array_sum($min);

$mins = $mins >= 10 ? str_pad($mins, 2, 0, STR_PAD_RIGHT) : $mins;
$hours += floor($mins/60);
$hours += $mins%60 >= 30 ? 1 : 0;
return $hours;
}

将日期转化为星期
复制代码 代码如下:

/* Author: 杨宇 <yangyu@sina.cn> */
//输入的$data参数为,yy/mm/dd 或者 yy-mm-dd,返回星期几
function getWeekDay($date) {
$date = str_replace('/','-',$date);
$dateArr = explode("-", $date);
return date("N", mktime(0,0,0,$dateArr[1],$dateArr[2],$dateArr[0]));
}

PHP将秒转化成小时和分(格式为 ** 小时 ** 分)
复制代码 代码如下:

/* Author: 杨宇 <yangyu@sina.cn> */
//将秒(非时间戳)转化成 ** 小时 ** 分
function sec2time($sec){

$sec = round($sec/60);
if ($sec >= 60){
$hour = floor($sec/60);
$min = $sec%60;
$res = $hour.' 小时 ';
$min != 0 && $res .= $min.' 分';
}else{
$res = $sec.' 分钟';
}
return $res;
}

相关文章

浅析php中三个等号(===)和两个等号(==)的区别

先举个列子:比如你一个函数会返回这几种情况:1、大于0的数2、小于0的数3、等于0的数(也就是0啦)4、False(失败时)这时候如果你想捕获失败的情况,你就必须用===,而不能用==因...

探讨:如何使用PhpDocumentor生成文档

命令行方式:  在phpDocumentor所在目录下,输入phpdoc –h会得到一个详细的参数表,其中几个重要的参数如下:-f 要进行分析的文件名,多个文件用逗号隔开-d 要分析的目...

PHP日期处理函数 整型日期格式

当我过去用ASP时解决这个问题相当简单,ASP有相应的函数DateDiff可以给出两个日期间间隔多少月、多少天和多少秒。当我搜寻完PHP手册后我发现PHP并没有类似的函数。 本文包含以下...

PHP自动生成后台导航网址的最佳方法

PHP自动生成后台导航网址的最佳方法

经常制作开发不同的网站的后台,写过很多种不同的后台导航写法。 最终积累了这种最写法,算是最好的吧。附上截图和代码如下(PHP+HTML)  复制代码 代码如下: <?ph...

利用phpexcel对数据库数据的导入excel(excel筛选)、导出excel

话不多说,请看代码: <?php date_default_timezone_set("PRC"); error_reporting(E_ALL); error_re...