Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    22

    istanziare dinamicamente una classe figlio in una classe madre

    Salve a tutti. Premesso che sono ben consapevole della mia pazzia..
    vorrei chiedere a voi come posso effettuare il "caricaricamento" di una classe X in una classe Y. Mi spiego meglio, non sto' parlando di ereditarietà.

    Allora diciamo che ho una classe applicazione, contenente vari metodi di connessione al Db ecc. In una cartella (/classi) ho 2 file blog.class.php (contenente metodi per la gestione di un blog) e utenti.class.php (contenente metodi per la gestione degli utente). Nella classe "applicazione" vorrei istanziare in modo automatico , quindi senza includerli direttamente nella classe, le classi blog e utenti. Tutto questo per inglobare all'interno di una sola istanza anche i "plug-in" blog e utenti.
    Il risultato finale che vorrei avere è il seguente:
    codice:
    Codice PHP:
    class application(){ 
    ... 

    $app = new application(); 
    //nel caso del blog 
    $app->blog->get_post(); 
    Il tutto però vorrei farlo senza dichiarare direttamente un attributo "blog" all'interno della classe application..

    Non so se sono stato chiaro. Sta di fatto che al momento non riesco a tirar fuori niente del genere. Grazie mille fatemi sapere

  2. #2
    Studiati questo codice:

    Codice PHP:
    <pre>
    <?php 

    class App {

        function 
    load() {
            
    $files glob(dirname(__FILE__) . '/classi/*.class.php');
            foreach (
    $files as $file) {
                include(
    $file);
                
    $class basename($file'.class.php');
                
    // $this->$class = new $class(&$this);
                
    $this->$class = new $class();
            }
        }
        
    }

    $app = new App();
    var_dump($app);

    $app->load();
    print_r($app);

    ?>
    </pre>

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    22
    sei un grande.. grazie mille davvero..

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.