Cita:
Iniciado por GatorV Porque no mejor heredas tu clase Db de la clase de PDO y te quitas así los problemas de usar return ya que a la hora de en tu constructor regresar otro objeto no se puede.
Saludos.
Si te retorna la instancia PDO dentro del constructor de la clase, pero como un atributo privado.
Código PHP:
Ver originalrequire('config_reader.php');
require('db.php');
require('registry.php');
$config = new Config('params.ini');
$db_slave = new db($config);
Esto imprimiría:
Connected to database
Código PHP:
Ver originalobject(db)#2 (5) {
["_username":"db":private]=>
string(4) "root"
["_password":"db":private]=>
string(12) "jupiter"
["_host":"db":private]=>
string(9) "localhost"
["_db":"db":private]=>
string(6) "codelab"
["_conexion":"db":private]=>
object(PDO)#3 (0) {
}
}
Por lo que tendrías que tener un método publico getConexion por ejemplo que te devuelva la instancia de PDO en vivo y poder utilizar posteriormente todos los métodos de PDO.
Aunque como dice GatorV es mejor heredar de PDO directamente.