for testing and deploying your application
for finding and fixing issues
for empowering human code reviews
<?php
/**
* Created by PhpStorm.
* User: jaredchu
* Date: 10/08/2017
* Time: 15:52
*/
namespace JC;
class EncryptManager extends CacheManager
{
* @var string
const ENCRYPT_METHOD = 'AES256';
public static $encryptKey;
* @return string
public static function getEncryptKey()
return self::$encryptKey;
}
* @param string $encryptKey
public static function setEncryptKey($encryptKey)
self::$encryptKey = $encryptKey;
* @param $string
public static function encrypt($string)
return openssl_encrypt($string, self::ENCRYPT_METHOD, self::getEncryptKey(), 0, self::getIv());
public static function decrypt($string)
return openssl_decrypt($string, self::ENCRYPT_METHOD, self::getEncryptKey(), 0, self::getIv());
* @return bool|string
protected static function getIv()
return substr(md5(self::getEncryptKey()), 0, 16);
* @param $array
protected static function encode($array)
return self::encrypt(json_encode($array));
* @return array
protected static function decode($string)
return json_decode(self::decrypt($string), true);