我可以用PHP全局设置cookie域吗?

时间:2015-04-11 17:31:47

标签: php cookies setcookie

在session_start()之前,我的网站的每个页面都包含以下两行PHP代码:

ini_set('session.cookie_domain', '.domain.com' );   
session_set_cookie_params( 0, "/", ".domain.com"); 

但是当我尝试在我的子域(m.domain.com)上设置cookie时,如

setcookie('mycookie', 'myvalue', time() + 30*24*60*60, "/");

Cookie仍在m.domain.com上的域中设置

只有我明确地将其设置为

 setcookie('mycookie', 'myvalue', time() + 30*24*60*60, "/", 'domain.com');

Cookie设置在.domain.com。

但我想要更改所有文件上所有setcookie函数的所有代码。我可以用任何方式全局更改吗?谢谢!

1 个答案:

答案 0 :(得分:0)

很遗憾,无法为Cookie设置默认域。正如您所看到的,session_set_cookie_params仅影响会话cookie。

您可以希望的最好的方法是创建自己的cookie函数,并预先填充默认值。