Oppure mettiamola così... sto dicendo che se tu classe A vuoi essere un controller e tu classe B vuoi esser un model, entrambe dovete implementare le interfacce necessarie. Mai sentito parlare di interfacce? Quelle, per ora, mal iplementate da PHP.Originariamente inviato da k.b
No mi spiace ma non permetto, perche' quello che dici e' contrario al concetto di OOP.
Tu sostanzialmente dici che se io Classe A voglio usare Classe B, allora devo implementare i metodi che Classe B richiede che io abbia? Ma stiamo scherzando? Cioe' io pubblico una classe model e chi la usa non solo deve conoscere l'interfaccia pubblica della mia classe, ma deve anche implementare dei particolari metodi nella classe in cui utilizza la mia? Stai creando dipendenze dove non ce ne devono essere.
Il model non estende il controller, non ne eredita nulla e quindi non ha motivo di sapere come sia fatto. Il controller chiama un metodo del model, quello esegue quello che deve eseguire e fornisce una risposta. In base a questa risposta il controller agira' come crede (notificando l'utente, o facendo qualsiasi altra cosa sia ritenuta opportuna). Fine. Notificare l'utente, chiamare una view e roba del genere, non e' il mestiere del model.
Altrimenti cara classe A non puoi definirti controller e cara classe B non puoi definirti model!