函数名:setcookie()
适用版本:PHP 4, PHP 5, PHP 7
用法:setcookie() 函数用于设置一个 cookie。
语法:setcookie(name, value, expire, path, domain, secure, httponly);
参数:
- name:必需,cookie 的名称。
- value:必需,cookie 的值。
- expire:可选,cookie 的过期时间,以 Unix 时间戳表示。如果未设置或设置为 0,则 cookie 在会话结束时过期。
- path:可选,cookie 的有效路径。如果设置为 '/',则整个网站都可以访问该 cookie。如果设置为 '/test/',则只有 test 目录及其子目录下可以访问该 cookie。
- domain:可选,cookie 的有效域名。例如,如果设置为 '.example.com',则所有以 example.com 结尾的域名都可以访问该 cookie。
- secure:可选,指定是否仅通过 HTTPS 连接传输 cookie。默认为 false。
- httponly:可选,指定是否仅通过 HTTP 协议访问 cookie。默认为 false。
示例:
设置一个名为 "username" 的 cookie,值为 "John Doe",并在 30 天后过期:
setcookie("username", "John Doe", time() + (30 * 24 * 60 * 60));
设置一个名为 "language" 的 cookie,值为 "en",并在会话结束时过期:
setcookie("language", "en");
设置一个名为 "theme" 的 cookie,值为 "dark",在整个网站都可以访问:
setcookie("theme", "dark", time() + (60 * 60 * 24 * 365), "/");
注意事项:
- setcookie() 函数必须在任何输出之前调用,包括 HTML 标签和空白字符。
- 在同一个脚本中多次调用 setcookie() 函数会创建多个 cookie。