0

次のような PHP 配列の文字列表現を MySQL データベースから選択したとします。

a:1:{s:2:"cc";a:2:{i:39340;s:9:"Username1";i:119778;s:9:"Username2";}}

文字列 "Username1" と "Username2" (または、中括弧の 2 番目のセット内のすべての文字列) を抽出するにはどうすればよいですか? PHPでこれを行う簡単な方法はありますか、それとも正規表現を使用する必要がありますか?

4

1 に答える 1

4

を使用しunserialize()ます。なんで?その文字列は実際にはシリアル化された配列であり、その関数はそれを配列に戻すためです。

$array = unserialize('a:1:{s:2:"cc";a:2:{i:39340;s:9:"Username1";i:119778;s:9:"Username2";}}');
print_r($array);

Array
(
    [cc] => Array
        (
            [39340] => Username1
            [119778] => Username2
        )

)

実際に見る

于 2013-09-12T19:20:13.700 に答える