php 日期时间处理函数小结

yipeiwu_com7年前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 PDO判断连接是否可用的实现方法

mysql_ping() 检查到服务器的连接是否正常。如果到服务器的连接可用,则返回true,否则返回false。 但PDO不支持mysql_ping()方法,因此需要自己编写代码模拟m...

PHP基于关联数组20行代码搞定约瑟夫问题示例

PHP基于关联数组20行代码搞定约瑟夫问题示例

本文实例讲述了PHP基于关联数组20行代码搞定约瑟夫问题。分享给大家供大家参考,具体如下: 记得前段时间一写做java开发的兄弟对我说他java60行做了个约瑟夫问题,挺不错的。调侃ph...

PHP中魔术变量__METHOD__与__FUNCTION__的区别

本文实例讲述了PHP中魔术变量__METHOD__与__FUNCTION__的区别,分享给大家供大家参考。具体分析如下: __METHOD__类的方法名(PHP 5.0.0 新加)。返回...

php生成4位数字验证码的实现代码

在php中实现验证码还是很方便的,关键点在于掌握php gd库与session的用法。 纵观网上php 生成验证码的例子,无不是php gd库与session相结合,并利用php 生成随...

PHP curl 获取响应的状态码的方法

PHP curl可以从服务器端模拟一个http请求,例如抓取网页、模拟登陆等。根据选项设置,可以在curl_exec的返回结果中获取到响应头和body,但这没有响应的状态吗。想要获取状态...