【发布时间】:2014-02-25 01:57:19
【问题描述】:
我需要将哈希引用数组传递给 php,以便 php 可以使用该数据。
我在做什么?
我正在使用 PHP::Serialize 模块序列化 perl 哈希引用数组并将其存储到数据库中。但是在阅读时我遇到了问题。
#!/usr/local/bin/perl
use PHP::Serialization qw(serialize unserialize);
my @rss_feed_result = ({
'data'=> 'here',
'id'=> 1,
},
);
my $rss_feed_result = serialize(\@rss_feed_result);
//storing it to database then
现在我通过反序列化读取 php 中的相同数据,并在反序列化后低于输出,这是不正确的。
<?php
.....read data from database into $perl_serialize_data
$perl_serialize_data = "HERE PERL SERIALIZE DATA";
print_r(unserialize($perl_serialize_data));
?>
下面是输出。
(
[0] => {
[1] => 'data'=>
[2] => 'here',
[3] => 'id'=>
[4] => 1,
[5] => },
)
如何解决这个问题?
【问题讨论】:
-
您还没有展示如何在 PHP 中反序列化数据。
-
只需将 perl 序列化的数据转换成 php 中的字符串并使用 unserialize 函数即可。
-
是的,你已经说过了。你还没有展示你是如何做到的。提问时不要描述你的代码做了什么;这迫使人们猜测你在做什么,他们可能会猜错。相反,显示您使用的确切代码。
-
@ThisSuitIsBlackNot - 我希望你现在没事。
-
这次分享成功了吗?
标签: php perl serialization