我在PHP这样的多维数组:

$array = array(
    "Part1" => array(
        "Subpart1" => array(0, 1),
        "Subpart2" => array(1, 0)
    ),
    "Part2" => array(0),
    "Part3" => array(0, 1, 0)
);

现在我想存储这个数组在一个MySQL表和其他PHP页面上再次找回它完全一样。

我一直在使用serialize()unserialize()试图

$array= serialize($array);

,然后将另一页上

$array= $row['Array'];
$array2 = array();
$array2 = unserialize($array);

但我似乎做了错事,在开始的时候我得到的var_dump布尔(假)的,现在我得到的var_dump NULL 的。

有帮助吗?

解决方案

您的代码看起来不错...

一两件事,能抓到你了是,如果你的列是太小了 - 如果你使用VARCHAR(255)您的数据可能被截断,而不会反序列化。如果添加$row['Array']的价值,我可以看看它的整体。

其他提示

使用塔型TEXT。串行化的数据经常不适合VARCHAR(255)。

您可以使用JSON编码,json_encode($阵列),你会得到JSON对象的字符串值,这样你就可以在数据库中存储和retrive并做json_decode($字符串,真实),所以你CAND在数组转换再次。如果你没有真正的参数传递给json_decode,它会转换成stdClass的。

详情       的数量       的       的                                                                                                                                                                                                                                                                                                                                                                                                                                                   的         量Sum                                                       的                   <强>其他                                   其他金额                                                           的                  税                  总                                                    

这是我在PHP / HTML表格。 我需要存储和检索的PHP情况(P),量(Q),速率(R),其为单独的表格式

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top