PHP自定义Cookie

创建Cookie

function create_cookie($session_name = '')
{
    //生成session_id
    $session_id = getRandomString(32, TRUE);
    /*初始化cookie*/
    $data = [
        'sess_session_id' => $session_id,
        'sess_ip_address' => get_ip_address(),
        'sess_user_agent' => $_SERVER['HTTP_USER_AGENT'],
        'sess_last_activity' => time(),
    ];
    setcookie($session_name, serialize($data), time() + 31536000 * 10, '/');
}

获取

/**
 * 获取cookie数据
 *
 * @param string $key cookie数组对应的key值
 * @return array
 */
function soc_get_cookie($cookie_name = '', $key = '')
{
    $cookie_data = unserialize($_COOKIE[ $cookie_name ]);
    if ( $key != '' )
    {
        return $cookie_data[ $key ];
    }
    else
    {
        return $cookie_data;
    }
}

设置cookie参数

function soc_set_cookie($session_name = '', $data = [])
{
    //获取cookie数组
    $cookie_data = unserialize($_COOKIE[ $session_name ]);

    $arr = [];
    foreach ($data as $key => $value)
    {
        $arr = array_merge($cookie_data, [$key => $value]);
        $cookie_data[ $key ] = $value;
    }

    setcookie($session_name, serialize($arr), time() + 31536000 * 10, '/');
}

删除cookie

function soc_delete_cookie($session_name = '')
{
    setcookie($session_name, '', time() - 10, '/');
}

猜你喜欢

转载自blog.csdn.net/u012663254/article/details/80420257
今日推荐