從PHP7版本開始不少依賴mcrypt擴展的方法都不支持了,PHP7.2.0及以上版本已經徹底不支持mcrypt擴展的任何方法了,因此PHP7及以上版本都應該使用openssl擴展來實現加解密。php
以DES-CBC加密方式爲例:加密
<?php class DesUtil { /** * Des 加密 * * @param $str * @param $secretKey * @param string $iv * @return string */ public static function encrypt($str, $secretKey, $iv = '') { return base64_encode(openssl_encrypt($str, 'des-cbc', $secretKey, OPENSSL_RAW_DATA, $iv)); } /** * Des 解密 * * @param $str * @param $secretKey * @param string $iv * @return string */ public static function decrypt($str, $secretKey, $iv = '') { return openssl_decrypt(base64_decode($str), 'des-cbc', $secretKey, OPENSSL_RAW_DATA, $iv); } }