sql >> Databáze >  >> RDS >> Mysql

Jak získat přístup k připojení mysqli v jiné třídě na jiné stránce?

Vaše DBConnection třída by potřebovala další metodu:

public function getLink()
{
    return $this->mysqli;
}

Zdá se, že váš původní User class byla podtřídou DBConnection , protože mysqli vlastnost na DBConnection je protected a User třída má parent::__construct() zavolejte.

Je lepší použít vkládání závislostí, takže váš User třída obdrží připojení k databázi prostřednictvím konstruktoru:

public function __construct(DBConnection $db)
{
    $this->mysqli = $db->getLink();
}

Poté z vašeho kódu můžete spustit:

$db = new DBConnection;
$uObj = new User($db);



  1. Výkon INNER JOIN vs. LEFT JOIN v SQL Server

  2. Nejbližší zápas, část 3

  3. Vybrat všechny duplicitní řádky na základě jednoho nebo dvou sloupců?

  4. EF 4, jak přidat dílčí třídy