PHP之pear包总结

       现在我们开发的时候,尤其是使用框架进行项目开发的时候,都会有一个专门的包管理工具,对,那就是composer,使用这个工具可以简单快速的引入一个代码包,十分快捷好用.接下就总结一下,经常使用到的pear包

 

  1. PHP-JWT

     一:JWT介绍:全称JSON Web Token,基于JSON的开放标准((RFC 7519) ,以token的方式代替传统的Cookie-Session模式,用于各服务器、客户端传递信息签名验证。

    

    二:JWT优点:

    1:服务端不需要保存传统会话信息,没有跨域传输问题,减小服务器开销。

    2:jwt构成简单,占用很少的字节,便于传输。

    3:json格式通用,不同语言之间都可以使用。

    

    三:JWT组成

    1:jwt由三部分组成:

         头部(header)
         载荷(payload) 包含一些定义信息和自定义信息
         签证(signature)

    2:具体构成:

    header:

{
  "typ": "JWT", //声明类型为jwt
  "alg": "HS256" //声明签名算法为SHA256
}

    载荷(payload):

{
  "iss": "coding",
  "aud": "x-wolf",
  "iat": 1525317601,
  "nbf": 1525318201,
  "exp": 1525318201,
  "data": {
    "userid": 1,
    "username": "x-wolf"
  }
}

    

载荷包括两部分:标准声明和其他声明。

标准声明:JWT标准规定的声明,但不是必须填写的;

标准声明字段:

  接收该JWT的一方

  iss: jwt签发者

  sub: jwt所面向的用户

  aud: 接收jwt的一方

  exp: jwt的过期时间,过期时间必须要大于签发时间

  nbf: 定义在什么时间之前,某个时间点后才能访问

  iat: jwt的签发时间

  jti: jwt的唯一身份标识,主要用来作为一次性token。

其他声明:自己定义的字段,因为这部分是可以解开的,建议不要加入敏感信息,这里的data就是我自己定义的声明

 

 

 

  2.链接redis

    phpredis 是使用c写的php扩展,predis 是使用纯php写的。
    在性能上的区别当然是扩展更好一些,但其实这两个实现还有更大的区别,就是连接的保持。

      • phpredis在扩展中使用c可以保持php-fpm到redis的长连接,所以一个php-fpm进程上的多个请求是复用同一个连接的。phpredis的pconnect就是长连接方式。
      • predis是使用php的socket来连接redis,所以需要每次请求连接redis。

    phpredis 和 predis 的性能差距没有跨数量级,当然要考虑具体业务,如果业务非常依赖redis,并且单机qps需要支持的比较大,建议使用phpredis。否则,predis是纯php实现的原因,需要composer即可安装,非常便捷.

  

    predis安装与使用:

      1)使用composer下载包到vendor目录

composer require Predis/Predis

      2)引入代码

require VENDOR_PATH . 'predis'.DIRECTORY_SEPARATOR.'predis'.DIRECTORY_SEPARATOR.'autoload.php';

      3)简单使用

        $server = [
            'host'          =>  '127.0.0.1', //主机地址
            'password'      =>  '123456',    //授权码
            'port'          =>  6379,        //端口号
            'database'      =>  0,           //选择库
            'read_timeout'  =>  60,          //超时时间

        ];

        $redis = new \Predis\Client($server);
        $redis->set('school',23);
        echo $redis->get('school');

    剩下的就是调用原生的redis命令就可以了

 

转载于:https://www.cnblogs.com/xingxia/p/pear_packages.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值