0
$info='a:1:{s:10:"2G Network";s:22:"GSM 900 / 1800 / 1900 ";}';
$info1 = unserialize($info);
print_r($info1);

firebug でコードを実行するとエラーが発生します。

Notice: unserialize() [<a href='function.unserialize'>function.unserialize</a>]: Error at offset 0 of 65 bytes in...

それを修正する方法?

4

3 に答える 3

0
use utf8_encode and utf8_decode..
like..

$str = utf8_encode($str); 

$str= unserialize($str); 

$str= utf8_decode($str);  
于 2012-12-12T10:37:47.077 に答える
0

これはあなたの問題を解決するのに役立つと思います:

<?php

$info = serialize(array('2G Network','GSM 900 / 1800 / 1900'));
(or)
$info='a:1:{s:10:"2G Network";s:22:"GSM 900 / 1800 / 1900 ";}';

$info1 = unserialize($info);
// Show the unserialized data;
print_r($info1);
?>

機能リファレンスについては、たとえばこれをクリックしてください。

于 2012-12-12T10:48:13.020 に答える
0

$info='a:38:{s:10:"2G Network";s:22:"GSM 900 / 1800 / 1900 ";}';正しくシリアライズされていません。

配列の形式は次のとおりです。

a:項目数:{要素の集合};

配列内の 1 つの要素 (2G ネットワーク => GSM 900 / 1800 / 1900)。残りはすべて問題なく、次は適切にシリアル化解除されます。

a:1:{s:10:"2G Network";s:22:"GSM 900 / 1800 / 1900 ";}
于 2012-12-12T10:34:59.817 に答える