国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php實現cookie加密的方法

2024-05-04 23:32:10
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php實現cookie加密的方法,涉及php操作cookie的加密、解密及設置等技巧,具有一定參考借鑒價值,需要的朋友可以參考下
 

本文實例講述了php實現cookie加密的方法。分享給大家供大家參考。具體實現方法如下:

 

復制代碼代碼如下:
<?php
class Cookie
{
    /**
     * 解密已經加密了的cookie
     * 
     * @param string $encryptedText
     * @return string
     */
    private static function _decrypt($encryptedText)
    {
        $key = Config::get('secret_key');
        $cryptText = base64_decode($encryptedText);
        $ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
        $iv = mcrypt_create_iv($ivSize, MCRYPT_RAND);
        $decryptText = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $cryptText, MCRYPT_MODE_ECB, $iv);
        return trim($decryptText);
    }
    /**
     * 加密cookie
     *
     * @param string $plainText
     * @return string
     */
    private static function _encrypt($plainText)
    {
        $key = Config::get('secret_key');
        $ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB);
        $iv = mcrypt_create_iv($ivSize, MCRYPT_RAND);
        $encryptText = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $plainText, MCRYPT_MODE_ECB, $iv);
        return trim(base64_encode($encryptText));
    }
    /**
     * 刪除cookie
     * 
     * @param array $args
     * @return boolean
     */
    public static function del($args)
    {
        $name = $args['name'];
        $domain = isset($args['domain']) ? $args['domain'] : null;
        return isset($_COOKIE[$name]) ? setcookie($name, '', time() - 86400, '/', $domain) : true;
    }
    /**
     * 得到指定cookie的值
     * 
     * @param string $name
     */
    public static function get($name)
    {
        return isset($_COOKIE[$name]) ? self::_decrypt($_COOKIE[$name]) : null;
    }
    /**
     * 設置cookie
     *
     * @param array $args
     * @return boolean
     */
    public static function set($args)
    {
        $name = $args['name'];
        $value= self::_encrypt($args['value']);
        $expire = isset($args['expire']) ? $args['expire'] : null;
        $path = isset($args['path']) ? $args['path'] : '/';
        $domain = isset($args['domain']) ? $args['domain'] : null;
        $secure = isset($args['secure']) ? $args['secure'] : 0;
        return setcookie($name, $value, $expire, $path, $domain, $secure);
    }
}

 

希望本文所述對大家的php程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 运城市| 泸溪县| 井陉县| 根河市| 中宁县| 高淳县| 视频| 镇赉县| 会泽县| 景谷| 澎湖县| 桂林市| 亳州市| 淅川县| 潮州市| 仙游县| 龙州县| 晋州市| 龙川县| 宜良县| 额尔古纳市| 肇州县| 潜山县| 美姑县| 曲阳县| 启东市| 新丰县| 武鸣县| 阆中市| 北海市| 西乌珠穆沁旗| 滦南县| 武隆县| 金湖县| 平塘县| 黑山县| 济阳县| 西平县| 杭州市| 哈巴河县| 女性|