You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP:如何通过给定的序列化字符串生成数组

在PHP中将序列化字符串反序列化为数组的方法

嘿,这事儿在PHP里其实特别简单,咱们直接用内置的unserialize()函数就能搞定!这个函数就是专门用来把PHP的序列化字符串还原成原始数据结构的,正好匹配你的需求。

具体实现代码

你可以直接把给定的序列化字符串传入unserialize()函数,就能得到对应的数组了。这里给你写个完整的可运行示例:

<?php
// 设置UTF-8编码,避免非ASCII字符乱码
header('Content-Type: text/html; charset=utf-8');

// 你的序列化字符串
$serializedStr = 'a:2:{i:1;a:4:{s:5:"index";s:1:"1";s:4:"name";s:22:"برای تست اول";s:6:"amount";s:6:"600000";s:11:"description";s:31:"فقط برای یک دامنه";}i:2;a:4:{s:5:"index";s:0:"";s:4:"name";s:22:"برای تست دوم";s:6:"amount";s:5:"70000";s:11:"description";s:37:"مجوز برای 2 تا 3 دامنه";}}';

// 执行反序列化操作
$deserializedArray = unserialize($serializedStr);

// 打印结果查看
print_r($deserializedArray);
?>

关键注意点

  • 字符编码处理:因为你的序列化字符串里包含波斯语字符,一定要确保PHP文件本身是UTF-8编码,同时通过header()设置输出编码,避免出现乱码问题。
  • 函数兼容性:unserialize()是PHP核心内置函数,几乎所有PHP版本都支持,不需要额外安装任何扩展,直接调用即可。

运行这段代码后,你会得到一个包含两个元素的索引数组,每个元素又是一个关联数组,完全对应序列化字符串里存储的原始数据。

内容的提问来源于stack exchange,提问作者Mahdi98

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 08:04:37