通过php脚本消除周末(周日)

时间:2017-03-24 06:32:09

标签: php

我正在尝试计算特定时段的可用工作天数。在这里我只需要通过以下PHP脚本排除星期日。如果这个脚本找到一个星期日这应该增加计数。它的工作但是,

此脚本能够排除第一个“星期日”,但不排除“第二个”和“第三个”。 请帮我解决一下这个问题

function testRange() {
            $phone_Quantity = 0;
            $phone_Quantity = $_POST['phoneQuantity'];
            if ($phone_Quantity > 0 && $phone_Quantity <= 300) {
                return 300;
            } elseif ($phone_Quantity >= 301 && $phone_Quantity <= 600) {
                return 600;
            } elseif ($phone_Quantity >= 601 && $phone_Quantity <= 900) {
                return 900;
            } elseif ($phone_Quantity >= 601 && $phone_Quantity <= 1200) {
                return 1200;
            } elseif ($phone_Quantity >= 1201 && $phone_Quantity <= 1500) {
                return 1500;
            } elseif ($phone_Quantity >= 1501 && $phone_Quantity <= 1800) {
                return 1800;
            }
        }


        echo testRange();
        $query_to_get_hours = "SELECT
cdma_filtering_target_hours.Target_hours
FROM
cdma_filtering_target_hours
WHERE
cdma_filtering_target_hours.No_of_units='" . testRange() . "'
";
        $query_to_get_hours_query = $system->prepareSelectQuery($query_to_get_hours);
        foreach ($query_to_get_hours_query as $THours) {
            $targeted_hours = $THours['Target_hours'];
        }


        $hid = 24; // Hours in a day - could be 24, 48, etc
        $days = round($targeted_hours / $hid);


        for ($xdays = 0; $xdays < $days; $xdays++) {
            if (date('l', strtotime(date('y-m-d', strtotime("+$xdays days")))) == 'Sunday') {

                $days++;
                break;
            }
        }

1 个答案:

答案 0 :(得分:0)

为什么要转换+ $ xdays字符串表示两次

如果您对if语句发表评论并添加下一行

echo date('l', strtotime("+$xdays days"));

你可以清楚地看到它有效。