Ciao a tutti,

sono alle prese con una questione che ho già incontrato in passato, ma che non ho mai risolto definitivamente e, siccome credo possa essere una discussione interessante, ho deciso di porre il problema.

Durante la realizzazione di un CMS capita spesso di avere a che fare con liste (di articoli, categorie, utenti, ecc) aventi più di un campo. Altrettanto spesso è sensato avere più di un ordinamento (ad esempio per data, ordine alfabetico, ecc) ed è quindi necessaria uno script che sia in grado di gestire diversi ordinamenti già all'interno delle stringhe SQL.

La difficoltà sorge quando il codice PHP del sito è strutturato in classi. Come gestire in questo caso gli ordinamenti? Le soluzioni che ho utilizzato fino ad oggi sono due: ignorare le classi nelle pagine del CMS e riscrivere le query oppure passare alla specifica funzione di selezione della classe un parametro specifico per il campo da ordinare e per il tipo di ordinamento da applicare (crescente/decrescente).

La mia domanda per voi è: qualcuno ha incontrato lo stesso problema? Come lo avete risolto? Avete una soluzione più "pulita" che non allunghi l'elenco dei parametri in situazioni - come quella in cui mi trovo - che richiedono già una discreta lista di parametri?

Spero di avervi messo nella situazione di inquadrare il problema!