如何保护 php 中的 cookie?

How to secure cookies in php?

session_set_cookie_params 是如何工作的? 我想确保所有 cookie 都设置为 httponly=truesecure=true。 但不是将这些参数添加到对 setcookie() 的每次调用中,我可以 只是 - 在 session_start() 之前 - 将它们设置在 session_set_cookie_params() 中? 从今以后,每次调用 setcookie 都会设置那些 params 我每个 cookie? 这将节省大量繁琐的工作(而且肯定容易出错)。 我会想象这样的事情

$cookieParams = session_get_cookie_params();
$cookieParams['httponly'] = true;
$cookieParams['secure'] = true;
session_set_cookie_params($cookieParams);
session_start();

所以现在,如果我这样做:

 setcookie("ABC_user", "", time()+3600);

那个 cookie 设置了参数 6 和 7 中的那些参数?有没有办法检查它是否有效?或者有更好的方法来完成这个吗?

这个简单的代码会给你你想要的。

function set_cookie($name,$content,$time){
$http_only = true;
$secure = true;
$path = "/";
$domain = ".example.com"; // Include All Subdomains
setcookie($name,$content,$time,$path,$domain,$secure,$http_only);
}

set_cookie("ABC_user", "", time() + 3600);