我希望从MySQL数据库中检索数据,计算工作日数和周末工作天数.
来自DB的时间格式如下:2013-07-01 07:00
这是我到目前为止:
function isWeekend($date) {
$check = date("w", strtotime($date));
if ($check == 6 || $check == 0) {
return 1;
}
else {
return 0;
}
}
$query = mysql_query ("SELECT date from jobcards");
while ($row = mysql_fetch_assoc($query)) {
$date = $row['date'];
$date_check= isWeekend($date);
if ($date_check == 1) {
++$weekend;
}
else {
++$workday;
}
}
Run Code Online (Sandbox Code Playgroud)
我需要找到一种方法来计算使用mysql的日子,有没有这样的方法或更优雅的方法来改进PHP代码?
此外,如果我在数据库中有多个具有相同日期范围但时间不同的记录:2013-07-01 07:00和2013-07-01 07:30它将被计为两个工作日,我将如何防止这种情况?
谢谢.
我在使用 ColdFusion (不是我曾经用过的语言)方面遇到了一些困难。
我正在尝试执行正则表达式来获取字符串的一部分。例如,如果我的字符串是:D_CECILA23_CEC23423
我想要两个下划线之间的部分。
这是我到目前为止的代码,它适用于任何字母字符,但是当一个数字被放入混合中时,它就会中断。
<cfset myStr = "D_CELCI_LISA">
<cfset myStr2 = reReplace(myStr, "([\w\d\%]+)(\_)([/ A-Z]+)(\_)([\w\d\?]+)", "\3", "all") >
<cfoutput>
myStr: #myStr#<br />
myStr2: #myStr2#<br />
</cfoutput>
Run Code Online (Sandbox Code Playgroud)
这给了我:
myStr: D_CELCI_LISA
myStr2: CELCI
Run Code Online (Sandbox Code Playgroud)