captain_torche Posté 29 Août 2006 Partager Posté 29 Août 2006 Je cherche à redéfinir certaines fonctions de PHP, mais je ne trouve pas comment le faire. J'ai bien vu un override_function, mais la version PHP n'est pas précisée (et PECL, c'est quoi ?) Pour finir, si jamais il était possible de redéfinir une fonction, serait-il possible de l'appeler elle-même au sein de la nouvelle définition, ou risque-ton une boucle infinie ? Ex : override function print_r($tab) {echo '<pre>';print_r($tab);echo '</pre>';} Lien vers le commentaire Partager sur d’autres sites More sharing options...
xpatval Posté 29 Août 2006 Partager Posté 29 Août 2006 Concernant PECL, c'est une librairie d'extension de PHP, pour le C. Pour le reste, ne connaissant pas ces possibilités, je vais m'amuser à tester, si j'arrive à installer/activer cette librairie... xpatval Lien vers le commentaire Partager sur d’autres sites More sharing options...
Dash Posté 29 Août 2006 Partager Posté 29 Août 2006 Installation avec WAMP : ajouter la ligne "extension=php_apd.dll" avec les autres extensions. Exemple de code : <?php$arg = array(1,2,3,4,5);print_r($arg );rename_function( 'print_r', 'print_r_bak'); function override_print_r($tab){ echo '<pre>'; print_r_bak($tab); #sinon boucle infinie echo '</pre>'; return;}override_function('print_r', '$tab', 'return override_print_r($tab);');print_r($arg );?> Le probleme de ce code c'est qu'il n'est pas transportable, car necessite un environnement particulier (PHP en mode cgi + librairie apd) Lien vers le commentaire Partager sur d’autres sites More sharing options...
captain_torche Posté 29 Août 2006 Auteur Partager Posté 29 Août 2006 Ok, merci beaucoup ! Je crois que je vais garder ma fonction print_t, alors Lien vers le commentaire Partager sur d’autres sites More sharing options...
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant