av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

php語(yǔ)言

php實(shí)現(xiàn)cookie加密的方法有哪些

時(shí)間:2025-03-04 12:10:07 php語(yǔ)言 我要投稿
  • 相關(guān)推薦

php實(shí)現(xiàn)cookie加密的方法有哪些

  php實(shí)現(xiàn)cookie加密的方法,涉及php操作cookie的加密、解密及設(shè)置等技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下。

  代碼如下:

  <?php

  class Cookie

  {

  /**

  * 解密已經(jīng)加密了的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;

  }

  /**

  * 設(shè)置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實(shí)現(xiàn)cookie加密的方法有哪些】相關(guān)文章:

php創(chuàng)建cookie獲取方法10-28

php用cookie實(shí)現(xiàn)記住登錄狀態(tài)10-16

php中cookie的使用方法09-27

Javascript到PHP加密通訊的簡(jiǎn)單實(shí)現(xiàn)07-23

PHP實(shí)現(xiàn)RSA加密類的實(shí)例解析08-23

PHP處理密碼的方法有哪些10-18

php使用cookie實(shí)現(xiàn)記住用戶名和實(shí)現(xiàn)代碼09-12

php頁(yè)面緩存實(shí)現(xiàn)方法07-20

PHP實(shí)現(xiàn)多線程的方法08-02