setcookie() 期望参数 3 是整数,给定数组

Sea*_*ysa 6 php cookies

我收到此 PHP 错误:

PHP 警告:setcookie() 期望参数 3 为整数,给定数组

使用此代码:

$setResult = setcookie(
    'visitorId',
    "{$newIdForNewVisitor}",
    [
        'httponly' => true,
        'expires' => time() + (50 * 365 * 24 * 60 * 60)
    ]
);
Run Code Online (Sandbox Code Playgroud)

但上的第二示例setcookie文档,我看到,参数3的选项参数可以关联数组:

一个关联数组,其中可能包含任何密钥 expires、path、domain、secure、httponly 和 samesite。这些值的含义与对同名参数描述的含义相同。samesite 元素的值应该是 Lax 或 Strict。如果没有给出任何允许的选项,它们的默认值与显式参数的默认值相同。如果省略 samesite 元素,则不会设置 SameSite cookie 属性。

这里犯了什么错误?

小智 3

您可能需要检查您正在运行的 PHP 版本。setcookie 函数的替代签名仅在 PHP 版本 7.3.0 中添加。