Fix deprecation error in PHP 8.x when path or domain is null in setcookie()

This commit is contained in:
Kijin Sung 2023-06-16 15:34:48 +09:00
parent 22abeb7a88
commit 180ed429cf
4 changed files with 6 additions and 6 deletions

View file

@ -321,7 +321,7 @@ class Context
$lang_type = preg_replace('/[^a-zA-Z0-9_-]/', '', $lang_type);
if ($set_lang_cookie)
{
setcookie('lang_type', $lang_type, time() + 86400 * 365, \RX_BASEURL, null, !!config('session.use_ssl_cookies'));
setcookie('lang_type', $lang_type, time() + 86400 * 365, \RX_BASEURL, '', !!config('session.use_ssl_cookies'));
}
if(!$lang_type || !isset($enabled_langs[$lang_type]))

View file

@ -46,7 +46,7 @@ class Mobile
$m = Context::get('m');
$cookie = isset($_COOKIE['rx_uatype']) ? $_COOKIE['rx_uatype'] : null;
$uahash = base64_encode_urlsafe(md5($_SERVER['HTTP_USER_AGENT'] ?? '', true));
if (strncmp($cookie, $uahash . ':', strlen($uahash) + 1) !== 0)
if (strncmp($cookie ?? '', $uahash . ':', strlen($uahash) + 1) !== 0)
{
$cookie = null;
}
@ -72,7 +72,7 @@ class Mobile
$uatype = $uahash . ':' . (self::$_ismobile ? '1' : '0');
if ($cookie !== $uatype)
{
setcookie('rx_uatype', $uatype, 0, \RX_BASEURL, null, !!config('session.use_ssl_cookies'));
setcookie('rx_uatype', $uatype, 0, \RX_BASEURL, '', !!config('session.use_ssl_cookies'));
$_COOKIE['rx_uatype'] = $uatype;
}

View file

@ -1261,7 +1261,7 @@ class Session
* @param string $domain (optional)
* @return bool
*/
protected static function _unsetCookie($name, $path = null, $domain = null)
protected static function _unsetCookie($name, $path = '', $domain = '')
{
$result = setcookie($name, 'deleted', time() - (86400 * 366), $path, $domain, false, false);
if ($result)

View file

@ -468,12 +468,12 @@ class UA
if (in_array($color_scheme, ['light', 'dark']))
{
$_COOKIE['rx_color_scheme'] = $color_scheme;
setcookie('rx_color_scheme', $color_scheme, time() + 86400 * 365, \RX_BASEURL, null, !!config('session.use_ssl_cookies'));
setcookie('rx_color_scheme', $color_scheme, time() + 86400 * 365, \RX_BASEURL, '', !!config('session.use_ssl_cookies'));
}
else
{
unset($_COOKIE['rx_color_scheme']);
setcookie('rx_color_scheme', 'deleted', time() - 86400, \RX_BASEURL, null);
setcookie('rx_color_scheme', 'deleted', time() - 86400, \RX_BASEURL);
}
}
}