2012-01-02 12 views

答えて

11

$this->dbがある可能性が高いです。

User.php

/** 
* @var PDO 
*/ 
protected $db; 

public function __construct() 
{ 
    $this->db = getInstanceOf('db'); 
} 

public function __destruct() 
{ 

} 

public function __sleep() 
{ 
    return array('db'); 
} 

public function __wakeup() 
{ 
    $this->db = getInstanceOf('db'); 
} 

getInstanceOf( 'DB')PDOオブジェクトを返しますが...

次のエラーを返します。 PDOオブジェクト。 PDOオブジェクトはシリアル化できません。

__sleep()にそのオブジェクトを削除し、(すでに後者の場合には何をすべきかである)__wakeup()に戻って、それを追加します。

public function __sleep() 
{ 
    return array(); 
} 

あなたがシリアライズできないオブジェクトをシリアル化することはできません。しかし、あなたが試したので、例外があります。それは基本的に全面的な問題です。シリアライズできないオブジェクトをシリアル化するようPHPに指示しないでください。

+0

ありがとうございました;)完全に機能しました... – MaxiNet

関連する問題