微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php – setcookie()和session_set_cookie_params()函数之间的区别

我试图理解PHP函数setcookie()和session_set_cookie_params()之间的区别.

看起来这两个函数都在执行相同类型的任务,但是setcookie()可用于创建名称为&的cookie.值.

我试图理解PHP手册,但没有明确的差异.

谢谢

解决方法:

基本上它不一样.

对于setcookie

<?PHP
$value = 'something from somewhere';

setcookie("TestCookie", $value);
setcookie("TestCookie", $value, time()+3600);  /* expire in 1 hour */
setcookie("TestCookie", $value, time()+3600, "/~rasmus/", "example.com", 1);
?>

你可以设置如上所述,超时会话的名称和值本身.
至于session_set_cookie_params:

session_set_cookie_params( 
    $currentCookieParams["lifetime"], 
    $currentCookieParams["path"], 
    $rootDomain, 
    $currentCookieParams["secure"], 
    $currentCookieParams["httponly"] 
); 

您可以在此处设置路径,cookie本身的到期时间,根域,安全级别以及更多参数http://PHP.net/manual/en/function.session-set-cookie-params.PHP

通过PHP的有效方法如下:

<?PHP 
$currentCookieParams = session_get_cookie_params(); 

$rootDomain = '.example.com'; 

session_set_cookie_params( 
    $currentCookieParams["lifetime"], 
    $currentCookieParams["path"], 
    $rootDomain, 
    $currentCookieParams["secure"], 
    $currentCookieParams["httponly"] 
); 

session_name('mysessionname'); 
session_start(); 

setcookie($cookieName, $cookieValue, time() + 3600, '/', $rootDomain); 
?>

高效编码器确保在设置参数本身之前设置参数,以便用户离开网格. cookie本身已到期.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐