0

PHPが私に言う理由が見つかりませんでした:

Warning: Insufficient data for unserializing - 5468 required, 226 present

シリアル化しようとしていて、いくつかのオブジェクトとデータをシリアル化解除した後です。

多分それは大きすぎますか?

編集 :

コードが複雑すぎて投稿できないため、私が何をしているのかを説明します。

データをシリアル化してセッションに保存しています。製品 (オブジェクト) のリストが付属する Basket オブジェクトをセッションに保存します。製品クラスは、一部の ORM 機能のクラスにある PDO オブジェクト (シリアル化中にエラーを返す) の保存を避けるために Serialize を実装します。

Serialize インターフェイスの実装方法は次のとおりです。

public function serialize() {
    $serialized = \serialize(array(
        '_vars' => $this->getVars(), 
        '_returnNullIfEmpty' => $this->_returnNullIfTempty, 
        '_dataModel' => $this->getDataModel()
    ));

    return $serialized;
}

public function unserialize($data) {
    $unserialized = \unserialize($data);

    $this->setVars($unserialized['_vars']);
    $this->_returnNullIfEmpty = $unserialized['_returnNullIfEmpty'];
    $this->_dataModel = $unserialized['_dataModel'];
}

私は最初の下に常にこのエラーがあることに気付きました:

Notice: unserialize() [function.unserialize]: Error at offset 10503 of 10968 bytes in ...
4

0 に答える 0