【linux】PHP存进redis的session数据为什么是这个格式的?我如何解析呢?aa|s:3:\"aaa\"

【linux】PHP存进redis的session数据为什么是这个格式的?我如何解析呢?aa|s:3:\

如上图,|s:24 |s:3 是什么呢,我如何去把他们解析成可用的数据进行使用呢?

回答

看格式应该是PHP序列化后存进去,serialize and unserialize

@godtail 已经说的比较清楚了。你可以理解为把一个实例化的对象存储在redis中,

拿到redis中的字符串,通过反序列化就可以得到这个对象

给你看一下Python的实现方法

>>> import redis

>>> redis_conn = redis.Redis( host = "127.0.0.1", port = 6379, db = 0 )

>>> import json

>>> a = { "name": "chenyanshan" }

>>> redis_conn['list_str'] = json.dumps(a)

>>> redis_conn['list_str']

'{"name": "chenyanshan"}'

>>> b = json.loads(redis_conn['list_str'])

>>> b

{u'name': u'chenyanshan'}

KeyError: 1

>>> a = b["name"]

>>> a

u'chenyanshan'

PHP的Json编码:

PHP JSON 函数

sess_|a:5:{s:4:"lang";i:1;s:11:"USER_KEY_ID";s:8:"80150307";s:8:"USER_KEY";s:17:"[email protected]";s:6:"STATUS";s:1:"1";s:12:"u_Login_Time";s:19:"2020-05-10 02:59:26";}login_time|i:1589053660;verifycode|i:6;
想获取邮箱怎么获取 序列化也试了 不行

以上是 【linux】PHP存进redis的session数据为什么是这个格式的?我如何解析呢?aa|s:3:\"aaa\" 的全部内容, 来源链接: utcz.com/a/83689.html

回到顶部