unserialize():Error at offset 0 of 96 bytes是什么意思

本文介绍PHP中数组序列化的两种主要方法:系统序列化和JSON序列化,以及如何在数据库存储和读取过程中确保数据安全,涉及addslashes()和stripslashes()函数的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据库有个列是数组序列化后存到数据库的,取出来得反序列化,

php想要把数组保存到数据库里,有几种序列化方式,分别是:

//php系统序列化

$b = serialize($a);     //序列化数组$a,得到字符串$b,存到数据库
$a = unserialize($b);     //从数据库取出来,反序列化字符串$b,得到数组$a

//使用json序列化

$b = json_encode($a);     //序列化数组$a,生成字符串
$a = json_decode($b);     //反序列化字符串$b,生成数组

 

还有 addslashes()与stripslashes()

默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。这是为了数据库的安全性。一些字符直接存储在数据库中是不安全的,他们是: 单引号 (') 双引号 (") 反斜杠 (\) NULL ************************************************************************************************************** addslashes() 函数在指定的预定义字符前添加反斜杠。这些预定义字符是: 单引号 (') 双引号 (") 反斜杠 (\) NULL ************************************************************************************************************** addslashes() 的例子: "; echo addslashes($str) . " This is safe in a database query."; ?> 输出: Who's John Adams? This is not safe in a database query. Who\'s John Adams? This is safe in a database query. ************************************************************************************************************** stripslashes() 函数是 addslashes() 的反向操作,即:删除由 addslashes() 函数添加的反斜杠。 ************************************************************************************************************** stripslashes() 例子: 输出: Who's John Adams? 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值