Salve,

sto realizzando un progettino e ho alcuni dubbi su alcune classi che sto creando..

A livello teorico io ho una classe "database" che mi fa le funzioni basilari di un database... per le query ho pensato ad un approccio di questo tipo:

1) ho una classe mysqlQuery che è figlia della classe database
2) mysqlQuery si compone di varie classi (es. insertQuery, selectQuery)

quindi ho:
Codice PHP:
class database {

}

class 
mysqlQuery extends database {
        public 
$query;

    public function 
__construct$type ) {
        
parent::getInstance();
        switch( 
$type ) {
            case 
'select':
                
$this->query = new selectQuery();
                break;
            case 
'insert':
                
$this->query = new insertQuery();
                break;
        }
    }
}

class 
insertQuery {
}

class 
selectQuery {

come potete vedere la classe mysqlQuery ha una proprietà pubblica che è la query stessa.. Ora io uso questa proprietà all'interno di altre classi ad esempio la dataViewer.class.php in questo modo:
Codice PHP:
class dataViewer {
    public function 
view$tab$what '*'$where = array() ) {
        
$db = new mysqlQuery'select' );
        
$db->query->select$what );
        
$db->query->from$tab );
        }

quello che voglio sapere è se è un approccio abbastanza sostenibile oppure no... ovviamente ci sono metodi migliori ma nelle mie seghe mentali sono arriva a questo, in particolare avere una classe su una proprietà pubblica mi scoccia un poco...

e pure lo switch su mysqlQuery mi scoccia..

**alcuni pezzi di codice sono stati omessi ovviamente