<?php
/*
 *  加密解密类
 */

namespace app\common\lib\encrypt;

use Defuse\Crypto\Key;
use Defuse\Crypto\Crypto;

#使用之前需先安装 defuse/php-encryption

class CryptoKey {

    public static $key = 'def00000c489c83f378af872f8b156896bdc50c3441305b795f54c4150b21d9742e5695568a03b64c968bbfbaed295ce7e661df53232e31a2c9169d39f759a1fa1260541';

    public static function loadEncryptionKeyFromConfig() {
//        $keyAscii = '';// ... load the contents of /etc/daveapp-secret-key.txt
        return Key::loadFromAsciiSafeString(self::$key);
    }

    //加密
    public static function encrypt($str = '') {
        return Crypto::encrypt($str,self::loadEncryptionKeyFromConfig());
    }
    //解密
    public static function decrypt($str = '') {
        return Crypto::decrypt($str,self::loadEncryptionKeyFromConfig());
    }
    #生成key
    public static function createKey() {
        $key = Key::createNewRandomKey();
        echo $key->saveToAsciiSafeString(), "\n";
    }
}

php使用Carbon获取2个日期之间的日期

<?php use Carbon\CarbonPeriod; $period = CarbonPeriod::create('2018-06-14', '2018-06-20'); // Iterate over the period fore...

阅读全文

php 解决超卖的几种方案(redis锁、mysql悲观锁)

1.创建商品和订单表模拟商品交易操作 fa_goods商品表,stock商品库存,test_order=订单表 2.添加一个测试商品数据(商品数量为150个) 测试并发购买的方法(gol...

阅读全文

centos8 yum安装php7.3

执行命令 $ yum install epel-release $ rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm $ dnf install -y https://rpms...

阅读全文

欢迎留言