400 of 410 menu

関数 unserialize

関数 unserialize は、シリアライズされた文字列を受け取り、 対応するPHPの値を返します。第一引数には文字列を、 第二引数には非必須のオプション配列を渡し、 デシリアライズ処理を制御できます。

構文

unserialize(string $data, array $options = []): mixed

シリアライズされた文字列を配列に戻します:

<?php $serialized = 'a:3:{i:0;s:1:"a";i:1;s:1:"b";i:2;s:1:"c";}'; $res = unserialize($serialized); print_r($res); ?>

コード実行結果:

['a', 'b', 'c']

オブジェクトのデシリアライズ:

<?php class Test { public $prop = 123; } $obj = new Test(); $serialized = serialize($obj); $res = unserialize($serialized); echo $res->prop; ?>

コード実行結果:

123

オプション 'allowed_classes' の使用:

<?php $serialized = 'O:4:"Test":1:{s:4:"prop";i:123;}'; $res = unserialize($serialized, ['allowed_classes' => false]); var_dump($res); ?>

コード実行結果:

object(__PHP_Incomplete_Class)#1 (2) { ["__PHP_Incomplete_Class_Name"]=> string(4) "Test" ["prop"]=> int(123) }

関連項目

  • 値をシリアライズされた文字列に変換する関数 serialize
  • 値をJSON文字列に変換する関数 json_encode
日本語
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItalianoქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
当サイトでは、サイトの動作、分析、パーソナライゼーションのためにクッキーを使用しています。 データ処理はプライバシーポリシーに従って行われます。
すべて受け入れる 設定 拒否