Вход Регистрация
Файл: source/library/Cookie.php
Строк: 93
<?php
class Cookie
{
    const 
Session null;
    const 
OneDay 86400;
    const 
SevenDays 604800;
    const 
ThirtyDays 2592000;
    const 
SixMonths 15811200;
    const 
OneYear 31536000;
    const 
Lifetime = -1// 2030-01-01 00:00:00

    /**
     * Returns true if there is a cookie with this name.
     *
     * @param string $name
     * @return bool
     */
    
static public function Exists($name)
    {
        return isset(
$_COOKIE[$name]);
    }

    
/**
     * Returns true if there no cookie with this name or it's empty, or 0,
     * or a few other things. Check http://php.net/empty for a full list.
     *
     * @param string $name
     * @return bool
     */
    
static public function IsEmpty($name)
    {
        return empty(
$_COOKIE[$name]);
    }

    
/**
     * Get the value of the given cookie. If the cookie does not exist the value
     * of $default will be returned.
     *
     * @param string $name
     * @param string $default
     * @return mixed
     */
    
static public function Get($name$default '')
    {
        return (isset(
$_COOKIE[$name]) ? $_COOKIE[$name] : $default);
    }

    
/**
     * Set a cookie. Silently does nothing if headers have already been sent.
     *
     * @param string $name
     * @param string $value
     * @param mixed $expiry
     * @param string $path
     * @param string $domain
     * @return bool
     */
    
static public function Set($name$value$expiry self::OneYear$path '/'$domain false)
    {
        
$retval false;
        if (!
headers_sent())
        {
            if (
$domain === false)
                
$domain $_SERVER['HTTP_HOST'];

            if (
$expiry === -1)
                
$expiry 1893456000// Lifetime = 2030-01-01 00:00:00
            
elseif (is_numeric($expiry))
            
$expiry += time();
            else
                
$expiry strtotime($expiry);

            
$retval = @setcookie($name$value$expiry$path$domain);
            if (
$retval)
                
$_COOKIE[$name] = $value;
        }
        return 
$retval;
    }

    
/**
     * Delete a cookie.
     *
     * @param string $name
     * @param string $path
     * @param string $domain
     * @param bool $remove_from_global Set to true to remove this cookie from this request.
     * @return bool
     */
    
static public function Delete($name$path '/'$domain false$remove_from_global false)
    {
        
$retval false;
        if (!
headers_sent())
        {
            if (
$domain === false)
                
$domain $_SERVER['HTTP_HOST'];
            
$retval setcookie($name''time() - 3600$path$domain);

            if (
$remove_from_global)
                unset(
$_COOKIE[$name]);
        }
        return 
$retval;
    }
}
Онлайн: 1
Реклама