Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/05/2011, 11:58
Avatar de AlberyKous
AlberyKous
 
Fecha de Ingreso: febrero-2011
Mensajes: 1
Antigüedad: 13 años, 2 meses
Puntos: 0
Consulta sobre Matriz PHP (Array Bidimensional) al estilo SQL

Estimados:

Estoy trabajando con bases de datos y para el software que estoy diseñando, surgio la necedidad de cargar la base de datos completa en un array PHP.

Me explico mejor:
He definido un objeto de tipo "databaseb_cache" el cual tiene ciertas propiedades y metodos.

Código PHP:
class database_cache{

// Protected Variables:
// --------------------
    
protected $db_data;
    protected 
$db_tables;


en la variable db_data guardo toda la base de datos, de la siguiente forma

Código PHP:
$db_data["nombre_tabla"][$fila][$columna
de esta forma si tengo una tabla en la base de datos de la forma

Tabla: persona
columnas:

id | nombre | apellido | sexo | edad | ciudad | pais | telefono | email
0 | Claudia | Smith | Mujer | 20 | Berlin | DEU | ----- | [email protected]
1 | Franziska | Müller | Mujer | 22 | Berlin | DEU | ----- | [email protected]


etc



por ejemplo oodria acceder a los nombres de todas las personas de la tabla usando el objeto "database_cache" de la siguiente forma

Código PHP:
echo $db_data["persona"][0]["nombre"]; // es igual a Claudia
echo $db_data["persona"][1]["nombre"]; // es igual a Franziska
echo $db_data["persona"][0]["edad"]; // es igual a 20
//.
//.
//.
//etc 


Mi problema viene ahora, con SQL puedo hacer consultas del tipo:

SELECT nombre, apellido FROM persona WHERE edad>18 AND edad <35 AND ciudad='Berlin' AND sexo='Mujer'

Y de esta forma obtener el nombre y apellido de todas las mujeres entre 18 y 35 años que viven en berlin.

La pregunta es: Como podria crear un metodo generico que aceptara
Código PHP:
$db_data 
y las condiciones necesarias, para darme un resultado como ese


algo de la forma:

Código PHP:
public function db_cache_query($tabla,$condiciones)
//$tabla=nombre de la tabla
//$condiciones= condiciones, en este caso 18<edad<34, ciudad=="berlin" y sexo=="Mujer".

//aqui el codigo

return $Matriz_con_resultados 


Espero que se haya entendido.

De antemano gracias.

Última edición por AlberyKous; 29/05/2011 a las 12:54