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;
}

相关文章

php5 non-thread-safe和thread-safe这两个版本的区别分析

先从字面意思上理解,None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查;Thread Safe就是线程安全,执行时会进行线程(thread)安全检...

PHP5函数小全(分享)

很多PHP前辈都写了PHP大全,但是我看了发现那些所谓的“大全”根本就不全,甚至比我整理的这个列表内的函数还要少,竟然冠名“大全”,让我不愤,背道而驰,整个“小犬”。usleep() 函...

php中 ob_start等函数截取标准输出的方法

最近在用PHP在cli下开发一款软件,遇到了这样的问题。我想将PHP脚本中输出的东西收集在一起,于是使用了ob_start和ob_end_flush这两个函数,确实有达到收集输出内容的作...

php4与php5的区别小结(配置异同)

php4 没有 静态成员 php网页后台出现这样的错误,查过SubPages1.php并没有找到相应的错误。网站在自己本地测试完全正常,传到空间以后就出现这样的错误。连验证码都看不到了,...

PHP strtotime函数用法、实现原理和源码分析

源码位置:\ext\date\php_date.c 复制代码 代码如下: /* {{{ proto int strtotime(string time [, int now ]) &nb...