Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Struttura di un'applicazione PHP

    Ciao. Dopo anni di programmazione ASP, ho finalmente deciso di passare a php. Ho imparato php4 e ora sto approdando a php5.
    La mia domanda è semplice: qual'è il modo migliore per strutturare un'applicazione in php5?

    In quanto a paradigma object oriented, ho come riferimento Java. Mi sono quindi creato le mie belle classi User, piuttosto che Admin (che estende User) o Prodotto..ecc.. che eseguono tutte le varie operazioni di interazione col database. Quindi, tendenzialmente, ad ogni tabella del database corrisponde una classe.
    In aggiunta a tutto ciò, uso Smarty per la gestione dei template, in modo da separare presentazione dei dati da elaborazione.

    Ora, è chiaro che classi e template devono essere usate da una qualche pagina che istanzi gli oggetti e chiami i metodi. In php come funziona?
    Esiste il modo di creare un metodo main() dentro ad una classe (come succede in Java) che venga richiamato automaticamente aprendo la pagina dal browser ed esegua tutte le operazioni, oppure l'unico modo è fare la nostra normalissima pagina php senza alcuna classe o funzione, con la solita programmazione procedurale, eseguendo le operazioni una dopo l'altra?

    es: pagina index.php
    Codice PHP:
    class Index extends Pagina{
       public static function 
    main(){
           
    //crea gli oggetti
           //chiama i metodi
           //richiama il template e genera l'output
       
    }

    Illuminatemi! Grazie ^^

  2. #2
    quando crei una classe in PHP 5 al posto di main() potrest usare la funzione predefinita CONSTRUCT che viene eseguita all'avvio della classe per inizializzare le variabili:

    Codice PHP:
    class test {

    function 
    __construct() {
      
    main();
    }

    public static function 
    main(){
           
    //crea gli oggetti
           //chiama i metodi
           //richiama il template e genera l'output
    }

    }

    $prova=new test(); // __construct viene eseguita immediatamente alla crezione della istanza 
    in tal modo prima di ogni cosa la classe esegue automaticamente quel che c'è in construct.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.