PHP 通过在 IF 语句中包含 IF 语句而出错

PHP getting errors by having an IF statement in an IF statement

编辑:

小伙伴看了几个小时指出括号错了


问题: 使用它时我不断出错。

错误:
mod_fcgid: stderr: PHP Parse error: syntax error, unexpected 'if' (T_IF), expecting function (T_FUNCTION) in /var/www/clients/client**/web***/web/****/data.php on line 101

代码: 这是代码片段(其余时间与代码无关)

class Day {
    function getDag($day) {
        $days = array();
        $whatdayisit = date("w");
        if($day == 1) {
            if ($whatdayisit == 1){
            array_push($days, strtotime("Monday"));
            array_push($days, strtotime("Monday + 1 day"));
            }
            else {
            array_push($days, strtotime("next Monday"));
            array_push($days, strtotime("next Monday + 1 day"));
            }
        }
        return $days;
}

我做过研究吗? 是的,我做了研究。我在 google 和 Whosebug 上搜索了很长时间,但我找不到适合我的确切问题的解决方案。

您的函数末尾缺少右括号。

class Day {
    function getDag($day) {
        $days = array();
        $whatdayisit = date("w");
        if($day == 1) {
            if ($whatdayisit == 1){
            array_push($days, strtotime("Monday"));
            array_push($days, strtotime("Monday + 1 day"));
            }
            else {
            array_push($days, strtotime("next Monday"));
            array_push($days, strtotime("next Monday + 1 day"));
            }
        }
        return $days;
    }
}

您缺少函数定义的右大括号。试试这个:

class Day {
    function getDag($day) {
        $days = array();
        $whatdayisit = date("w");
        if($day == 1) {
            if ($whatdayisit == 1) {
                array_push($days, strtotime("Monday"));
                array_push($days, strtotime("Monday + 1 day"));
            } else {
                array_push($days, strtotime("next Monday"));
                array_push($days, strtotime("next Monday + 1 day"));
            }
        }
        return $days;
    }
}