runkit extension
Posté : 10 déc. 2007, 01:43
Hello à tous.
Je travaille en ce moment sur un projet PHP incluant un système de plugins que j'éxécute en CLI et je voudrais pouvoir recharger un plugin sans avoir à relancer tout le programme. Utilisant l'aspect programmation objet de PHP, j'ai donc défini une classe par plugin. Grace à l'extension runkit je suis censé pouvoir écraser une ancienne instance de classe par une nouvelle (qui a donc pu être modifiée entre temps) sans que PHP génère d'erreurs.
Cela dit j'ai l'impression que la fonction me permettant de faire ce que je veux, c'est à dire runkit_import(), ne fonctionne pas en CLI. Elle ne renvoie aucune erreur mais le plugin n'est pas rechargé, il reste inchangé. Je suis tombé sur la description exacte de mon problème ici : http://pecl.php.net/bugs/bug.php?id=10088&edit=1 mais il semble qu'aucune solution n'ait été encore trouvée.
On peut lire sur php.net la description de cette fonction et dans les commentaires une solution consistant à utiliser ce runkit_import() par le biais d'une classe tiers. Mais cela ne marchant pas non plus, je commence à désespérer.
Peut être qu'ici quelqu'un a déjà eu ce problème et l'a résolu ? Je suis preneur de tout ce qui peut m'orienter vers la bonne piste.
Merci d'avance !
Je travaille en ce moment sur un projet PHP incluant un système de plugins que j'éxécute en CLI et je voudrais pouvoir recharger un plugin sans avoir à relancer tout le programme. Utilisant l'aspect programmation objet de PHP, j'ai donc défini une classe par plugin. Grace à l'extension runkit je suis censé pouvoir écraser une ancienne instance de classe par une nouvelle (qui a donc pu être modifiée entre temps) sans que PHP génère d'erreurs.
Cela dit j'ai l'impression que la fonction me permettant de faire ce que je veux, c'est à dire runkit_import(), ne fonctionne pas en CLI. Elle ne renvoie aucune erreur mais le plugin n'est pas rechargé, il reste inchangé. Je suis tombé sur la description exacte de mon problème ici : http://pecl.php.net/bugs/bug.php?id=10088&edit=1 mais il semble qu'aucune solution n'ait été encore trouvée.
On peut lire sur php.net la description de cette fonction et dans les commentaires une solution consistant à utiliser ce runkit_import() par le biais d'une classe tiers. Mais cela ne marchant pas non plus, je commence à désespérer.
Peut être qu'ici quelqu'un a déjà eu ce problème et l'a résolu ? Je suis preneur de tout ce qui peut m'orienter vers la bonne piste.
Merci d'avance !