Trying to use database connection with singleton. __constructor has been private and returning instance from static function.
class MyDbConn
{
protected $_conn;
protected $database;
protected $user;
protected $password;
protected $host = "localhost";
private static $instance;
private function __construct()
{
$this->db_conn = new PDO("mysql:host=$this->host;dbname=$this->database",$this->user,$this->password);
$this->db_conn->exec("set names utf8");
$this->_conn = $this->db_conn;
}
public static function returnInstance() {
if(self::$instance == null)
{
print "Object created!";
self::$instance = new self;
}
return self::$instance;
}
public function returnconnection(){
return $this->_connection;
}
}
Now I can access the connection instance from MyDbConn::returnInstance()->returnconnection();
But, How do I pass my users detail and database name to this constructor ?? I cannot do ::returnInstance($username,$password) or returnconnection($username,$password).
Any ideas please.