Buenas.. a todos los expertos de este foro, me estoy iniciando en la programación con PHP y quisiera saber si es posible crear un arreglo con objetos (clases) de conexion a bases de datos y luego poder utilizarlos en el momento que se requiera.
LA CLASE:
------------
class Database extends PDO
{
public function __construct($dbName) {
parent::__construct(
'mysql:host=' . DB_HOST . //estas constantes que he definido
';dbname=' . $dbName,
DB_USER,
DB_PASS,
array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES ' . DB_CHAR
));
}
}
EL ARREGLO CON LOS OBJETOS (conexiones a bases de datos)
-------------------------------------------------------------------------------
include_once 'database.php';
class Modelo
{
protected $_db= array();
public function __construct(){
//nombres de las bases de datos que quiero utilizar, son identicas en estructura
$nombresdb = Array('sanluis', 'juanairis', 'juanita','lincon');
for ($i, $i<count($nombresdb), i++){
$this->_db[$i] = new Database($nombresdb[$i]);
}
}
}
EL MANEJO DE LAS BASES DE DATOS
----------------------------------------------
class estudiantes extents Modelo
{
public function __construct(){
parent::__construct();
}
public function ListarEstudiantes(){
for($i; $i<count($this->_db);$i++){
$estudiante = $this->_db->query(
"select * from estudiantes"
);
$estudiante->fetch();
$estudiantes = array_merge($estudiantes, $estudiante);
}
return $estudiantes;
}
PRESENTACION DE LA CONSULTA
------------------------------------------
include_once 'estudiantes.php';
class Informe
{
print_r(ListarEstudiantes());
}
Cuando ejecuto la consulta me sale el error clasico que el array esta nullo o vacio..
osea el objeto que esta en el arreglo no ha funcionado?... cuando asigno los objetos a variables por separado si funciona.. pero cuando los deposito en un arreglo no funciona.. que sera? alguien podria decirme si es posible crear objetos en un array y luego poder utilizarlos?.. sera eso posible?