[résolu] [PHP5] Redefinir une classe

Redefinir une classe [résolu] [PHP5] - PHP - Programmation

Marsh Posté le 08-05-2005 à 20:51:56    

Existe-t-il une méthode pour redefinir une classe en php5 ?
 
Une function telle que unset() mais pour les classes.
 
J'ai en fait toute une liste de .php dans un répertoire qui
contiennent chacuns une seule classe dont je n'ai que faire
du nom : seul le nom du fichier m'importe. Il me serait donc
pratique que toutes les classes aient un nom identique.
 
Merci.


Message édité par cnstrnd le 09-05-2005 à 06:18:18
Reply

Marsh Posté le 08-05-2005 à 20:51:56   

Reply

Marsh Posté le 08-05-2005 à 21:25:57    

Ca devrait marcher si toute les class herite de la même classe .... mais ça me parait être du grand n'improte quoi ton truc :D


---------------
"L'informatique n'est pas plus la science des ordinateurs que l'astronomie n'est celle des télescopes." Michael R. Fellows & Ian Parberry
Reply

Marsh Posté le 08-05-2005 à 22:09:39    

J'essaye de faire un mini systeme de plugins a partir d'une telle arborescence :

+-PLUGINS_ROOT
  +-nomduplugin1.php
 
          class Plugin extends AbstractPlugin
          {
          }
 
  +-nomduplugin2.php
 
          class Plugin extends AbstractPlugin
          {
          }
 
etc ...


Je les chargerais tous dans un tableau associatif :
 

$plugins = array();
 
foreach( new DirectoryIterator( PLUGINS_ROOT ) as $filename )
{
  include $filename;
 
  $key = vire_l_extension( $filename ); // nomduplug1, nomduplug2, etc
  $plugins[$key] = new Plugin;
}


Quelque chose dans le genre.
 
Si quelqu'un est inspiré, qu'il n'hesite pas.

Reply

Marsh Posté le 09-05-2005 à 06:17:52    

Pas moyen ... meme avec classkit ...

Reply

Marsh Posté le 09-05-2005 à 11:28:04    

Et après tu compte faire quoi ?  
Si tu veux faire de la prog object il faut respecter les principes de base.
 
Si tu veux faire du quick&durty et en malheuresement mettant des  
 

Code :
  1. +-PLUGINS_ROOT
  2.   +-nomduplugin1.php
  3.           class nomduplugin1 extends AbstractPlugin
  4.           {
  5.           }


 
tu pourra peut-être taper ton  
 

Code :
  1. foreach( new DirectoryIterator( PLUGINS_ROOT ) as $filename )
  2. {
  3.   include $filename;
  4.   $key = vire_l_extension( $filename ); // nomduplug1, nomduplug2, etc
  5.   $plugins[$key] = new call_user_func(array($key,$key));
  6. }


---------------
"L'informatique n'est pas plus la science des ordinateurs que l'astronomie n'est celle des télescopes." Michael R. Fellows & Ian Parberry
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed