PHP判断是否序列化后的数据-前言 前端做了数据加密,里面是序列化以后的字符串,加密数据被修改以后会导致反序列化致命错误,可以先检查是否序列化数据再进行反序列化。 函数 /** * @param $data ...

建站技术分享网

建站技术分享网
首页>> php >>PHP判断是否序列化后的数据
2021-4-27
分类: php

PHP判断是否序列化后的数据

文章作者:清风

前言 前端做了数据加密,里面是序列化以后的字符串,加密数据被修改以后会导致反序列化致命错误,可以先检查是否序列化数据再进行反序列化。 函数 /**......

前言

前端做了数据加密,里面是序列化以后的字符串,加密数据被修改以后会导致反序列化致命错误,可以先检查是否序列化数据再进行反序列化。

函数

/** * @param $data * @return bool */ function is_serialized($data): bool { $data = trim($data); if ('N;' === $data) return true; if (!preg_match('/^([adObis]):/', $data, $basins)) return false; switch ($basins[1]) { case 'a' : case 'O' : case 's' : if (preg_match("/^{$basins[1]}:[0-9]+:.*[;}]\$/s", $data)) { return true; } break; case 'b' : case 'i' : case 'd' : if (preg_match("/^{$basins[1]}:[0-9.E-]+;\$/", $data)) { return true; } break; } return false; }

×

感谢您的支持,我们会一直保持!

扫码支持
请土豪扫码随意打赏

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

打赏作者
版权所有,转载注意明处:FEIBA分享博客 » PHP判断是否序列化后的数据

发表评论

路人甲

网友评论(0)