这是什么绳子?如何取消此字符串的序列化?

这是什么绳子?如何取消此字符串的序列化?

这是什么绳子?我如何取消它的序列化,并从其中获取数组?

a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}


蝴蝶不菲
浏览 376回答 2
2回答

LEATH

这是一个序列化字符串。您可以使用以下函数取消它的序列化:unserialize(),就像这样:$str = 'a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}';print_r(unserialize($str));产出:Array ( [0] => Abogado [1] => Notario )边注:引用手册中的一句话:警告:如果出现错误,则返回false,如果不序列化的false值,则返回false。可以通过将str与序列化(False)进行比较或捕获已发出的E_NOTION来捕获此特殊情况。.警告:不要将不受信任的用户输入传递给un序列化()。由于对象实例化和自动加载,非序列化可能导致加载和执行代码,恶意用户可能会利用此漏洞。..如果需要将序列化的数据传递给用户,可以使用安全的标准数据交换格式,例如JSON(通过json_decode()和json_encode()。

Helenr

我用这个:$argument = 'a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}';$arr = unserialize(urldecode($argument));print_r($arr);
打开App,查看更多内容
随时随地看视频慕课网APP