unserialize

unserialize -- 保存用表現から PHP の値を生成する

説明

mixed unserialize(string str);

unserialize() は、シリアル化された変数 (serialize() を参照) をとり、PHP 変数値に 戻す変換を行います。 変換された値が返されます。その値は、 integer, double, string, array , object とすることが可能です。 オブジェクトがシリアル化された場合、 返り値にそのメソッドは保存されていません。

例 1. unserialize の例

  1 
  2  // ここで、データベースから $session_data にセッションデータをロード 
  3  // するために unserialize() を使用します。
  4  // この例は、serialize() で記述された例を補足するものです。
  5  
  6  $conn = odbc_connect("webdb", "php", "chicken");
  7  $stmt = odbc_prepare($conn, "SELECT data FROM sessions WHERE id = ?");
  8  $sqldata = array($PHP_AUTH_USER);
  9  if (!odbc_execute($stmt, &$sqldata) || !odbc_fetch_into($stmt, &$tmp)) {
 10      // 実行または取得が失敗した場合、空の配列で初期化します
 11      $session_data = array();
 12  } else {
 13      // $tmp[0] にシリアル化されたデータを保持している必要があります。
 14      $session_data = unserialize($tmp[0]);
 15      if (!is_array($session_data)) {
 16          // 何か問題があったため、空の配列で初期化します。
 17          $session_data = array();
 18      }
 19  }
 20