Ver Mensaje Individual
  #1 (permalink)  
Antiguo 20/09/2021, 22:10
Avatar de bandolera
bandolera
 
Fecha de Ingreso: abril-2009
Mensajes: 613
Antigüedad: 15 años
Puntos: 7
Pregunta Diferentes consulta para una misma tabla

He editado mi pregunta para un mejor entendimiento:
Tengo una clase con tres métodos de lista (según requerimiento)

Código PHP:
public function lista1($valor) {
    try {
            
$sql "SELECT campo1, campo2, campo3, campo4, ... campoN FROM tabla WHERE CONDICION X";
            
/** codigo **/
            
$row $stmt->fetch(PDO::FETCH_ASSOC);
            
$lista = new clase();
            
$lista->set_campo1($row['campo1']);
            
$lista->set_campo2($row['campo2']);
            
$lista->set_campo3($row['campo3']);
            
$lista->set_campo4($row['campo4']);
            (...)
            
$lista->set_campoN($row['campoN']);
            return 
$lista;
        }
}

public function 
lista2($valor) {
    try {
            
$sql "SELECT campo1, campo2 FROM tabla WHERE CONDICION Y";
            
/** codigo **/
            
$row $stmt->fetch(PDO::FETCH_ASSOC);
            
$lista = new clase();
            
$lista->set_campo1($row['campo1']);
            
$lista->set_campo2($row['campo2']);
            return 
$lista;
        }
}

public function 
lista3($valor) {
    try {
            
$sql "SELECT campo1, campo4, campo5, campo8 FROM tabla WHERE CONDICION Z";
            
/** codigo **/
            
$row $stmt->fetch(PDO::FETCH_ASSOC);
            
$lista = new clase();
            
$lista->set_campo1($row['campo1']);
            
$lista->set_campo4($row['campo4']);
            
$lista->set_campo5($row['campo5']);
            
$lista->set_campo8($row['campo8']);
            return 
$lista;
        }

Las clases lista2 y lista3 muestran menos campos que lista1. Es necesario tener tres o más clases que hace casi lo mismo?
O puedo usar para todos los casos lista1 y solo trabajar con lo que necesito?
O existe otra forma de hacerlo?
__________________
Todos somos iguales. NO! a la violencia de género.

Última edición por bandolera; 21/09/2021 a las 10:53