无法在$ _SESSION中存储数据库连接

Ale*_*Ber 2 php mysql session class web

可能重复:
无法在php中的会话中传递mysqli连接

我正在尝试将定制的PHP MySql类存储到$ _SESSION中.访问时,PHP会抛出一个错误:"脚本试图执行一个方法或访问一个不完整对象的属性......".

include_once 'core/mysql.php';

    $conn = new mysql();
    $_SESSION['DBCONNECTION'] = new mysql();

    $result = $_SESSION['DBCONNECTION']->query_cust($sql);  // Fails!
    $result = $conn->query_cust($sql); // Works!
Run Code Online (Sandbox Code Playgroud)

我只是想了解PHP中的Sessions如何工作以及将类定义为普通变量和变量内部之间的区别是什么$_SESSION

var_dump($_SESSION['DBCONNECTION']) 收益:

object(__PHP_Incomplete_Class)[1]
  public '__PHP_Incomplete_Class_Name' => string 'mysql' (length=5)
  public 'con' => int 0
Run Code Online (Sandbox Code Playgroud)

kon*_*ddy 6

您无法在其中存储资源处理$_SESSION.见PHP.net:

某些类型的数据无法序列化,因此存储在会话中.它包括资源变量或具有循环引用的对象(即将对自身的引用传递给另一个对象的对象).

由于您的对象包含连接链接,因此无法序列化.