El caso es que tengo un modelo que tiene un metodo que hace una consulta en la BD y devuelve un un array con los datos a un controller .
Hasta aquí todo Ok !
Código PHP:
final class mi_clase_modelo extends otra_clase
{
public function get_resultados()#primer metodo que instancio
{
$result = $this->_db->query('SELECT * FROM
tabla where col ="cond" ');
$datos = $result->fetch_all(MYSQLI_ASSOC);
$this->metodo_ejemplo($datos);
$this->temp_datos_bd($datos,"guardar");
}
public function metodo_ejemplo($result)
{
#Trabajamos los datos y devuelvo al controller
return $mi_arr;
}
public function temp_datos_bd($op,$resulset)
{
if ($op=="guardar")
{
$resulset_guardado = $resulset;
}
elseif ($op=="recuperar")
{
return $resulset_guardado[$resulset];
}
}
public function otro_metodo()
{
$bd = $this->temp_datos_bd("recuperar",15);
## pido al metodo temp_datos_bd que devuelva el indice 15 del la matriz
## de resulset
var_dump($db);
## pero me falla el ámbito del atributo:
Notice: Undefined variable: resulset_guardado
}
Pero claro , pienso que si mi atributo $datos del metodo get_resultados ya contiene todo el resulset ... porque voy a hacer otra consulta en bd ... ??
Así que intente crear un método que reciba el resulset y lo mantenga , para cuando necesite consultar algún otro dato de la consulta que ya hice en bd .
La verdad es que he probado declarando un atributo publico en la clase ... pero no se sobre-escribe..
estoy pensando en variables globales... o quizás sea un atributo static pq no va a cambiar...Alguna idea?