pack/unpack
pack/unpack関数を用いてデータをバイナリ直列化してみるメモ
PHP
<?php
$data = unpack('H*', serialize(array('ほげ')));
var_dump(pack('H*', $data[1]));
// unserialize(pack('H*', $data[1]));
?>
Perl
use strict;
use warnings;
use Storable qw/nfreeze thaw/;
my @ar = qw/hoge fuga foobar/;
my $data1 = unpack('H*', nfreeze(\@ar));
my @data2 = @{thaw(pack('H*', $data1))};
print @data2;
Ruby
ar = %w/hoge fuga foobar/
data = Marshal.dump(ar).unpack('H*')
p Marshal.load(data.pack('H*'))