php unexpected ')' parse error
Possible Duplicate:
Can I use a function to return a default param in php?
Using function result as a default argument in PHP function
I am trying to set default value for a function. I want the function $expires
default value to be time() + 604800
.
I am trying
public function set($name,$value,$expires = time()+604800) {
echo $expires;
return setcookie($name, $value, $expires);
}
But I get an error.
Parse error: syntax error, unexpected '(', expecting ')' in /var/www/running/8ima/lib/cookies.lib.php on line 38
How should I write it?
$expires = time()+604800
in the function definition.
Default value can't be the result of a function, only a simple value QUoting from the manual:
The default value must be a constant expression, not (for example) a variable, a class member or a function call.
Use:
public function set($name,$value,$expires = NULL) {
if (is_null($expires))
$expires = time()+604800;
echo $expires;
return setcookie($name, $value, $expires);
}
You cannot use a function call in your params declaration.
Do it this way:
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/11984.html
上一篇: 解析错误:语法错误,意外的'(',期待','或';'in
下一篇: PHP意外')'解析错误