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

我可以用PHP全局设置cookie域吗?,php,cookies,setcookie,Php,Cookies,Setcookie,在会话开始之前,我的站点的每个页面上都包含以下两行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

在会话开始之前,我的站点的每个页面上都包含以下两行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函数的所有代码。我有什么办法可以在全球范围内改变它吗?谢谢

不幸的是,无法为cookie设置默认域。正如您所看到的,session\u set\u cookie\u参数只影响会话cookie

您所能期望的最好方法可能是使用预先填充的默认值创建您自己的cookie函数