PHP意外')'解析错误

可能重复:
我可以使用函数来返回一个默认的参数在PHP中?
在PHP函数中使用函数结果作为默认参数

我正在尝试为函数设置默认值。 我希望函数$expires默认值是time() + 604800

我在尝试

public function set($name,$value,$expires = time()+604800) {
    echo $expires;
    return setcookie($name, $value, $expires);
    }

但是我得到一个错误。

第38行的/var/www/running/8ima/lib/cookies.lib.php中解析错误:语法错误,意外的'(',期待')'

我应该如何写它?


$expires = time()+604800

在函数定义中。

默认值不能是函数的结果,只能是简单的值从手册引用:

默认值必须是常量表达式,而不是(例如)变量,类成员或函数调用。

使用:

public function set($name,$value,$expires = NULL) { 
    if (is_null($expires))
        $expires = time()+604800;
    echo $expires; 
    return setcookie($name, $value, $expires); 
} 

您不能在您的params声明中使用函数调用。

这样做:

public function set($name,$value,$expires = null) {
    if(is_null($expires)) $expires = time()+604800;
    echo $expires;
    return setcookie($name, $value, $expires);
}

尝试这个:

public function set($name,$value,$expires = NULL) {
    if(is_null($expires)) {
        $expires = time() + 604800;
    }
    echo $expires;
    return setcookie($name, $value, $expires);
}
链接地址: http://www.djcxy.com/p/11983.html

上一篇: php unexpected ')' parse error

下一篇: Why when add <?xml version="1.0" encoding="utf