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

    [php5] una __autoload ad ogni classe

    Ciao a tutti. Una delle cose che mi piace della OOP è l'overload e la ridefinizione delle funzioni di classi che estendono altre etc, insomma, avrete capito di cosa parlo.

    Il mio problema è questa meravigliosa funzione __autoload(). A me piacerebbe molto usarla nel modo seguente:

    Codice PHP:
    function __autoload($classname) {
       require_once(
    'class.'.$classname.'.php';
    }

    class 
    {
       public 
    $object;

       function 
    __autoload($classname) {
          require_once(
    __CLASS__.'.'.$classname.'.php';
       }

       function 
    __construct() {
          
    $this->object = new subclass();
       }

    dove ho questi file aggiuntivi chiamati class.A.php e A.subclass.php. Il concetto è definire una __autoload interna ad ogni classe a cui fanno riferimento le chiamare new effettuate dalla classe, ed eventualmente una serie di fallback se la chiamata fallisse (per esempio la classe B estende la classe A e vuole creare un oggetto come definito da A.subclass.php ma la autoload di B non contempla il caso A. e quindi passa il controllo alla autoload della classe genitore estesa che è A e che ha una autoload che sa come gestire questo fatto).

    La mia domanda è: si può fare? Perché a me pare di no, ma mi sembra una sciocchezza. Se si può fare, come? La documentazione su autoload mi sembra così scarsa...

  2. #2

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.