Le 21 novembre 2011 10:15, Dsls <[email protected]> a écrit :
>> Tu parles de $core->getBehaviors ? Il n'y a aucune restriction sur
>>
>> > cette classe...
>>
>> Étrange, car à l'exécution il me renvoyait dans mes buts en me disant
>> que la méthode n'existait pas ! Du coup je suis passé par une fonction
>> helper exécutée à chaque fois pour l'afficher sur une page côté
>> public. Si je codais ça côté template ($core->getBehaviours()) alors
>> j'avais une erreur.
>>
> C'était pas plutôt une histoire de visibilité de $core (vs $GLOBALS['core'])
> ?
Je ne pense pas parce que dans le code PHP (dans le cache), l'objet
$core était utilisé normalement.
Voilà le code que j'injectais :
$code =
'echo \'<h3>'.__('Behaviours list').'</h3><ul>\';'."\n".
'$bl = $core->getBehaviours();'."\n".
'foreach ($bl as $b => $f) {'."\n".
' echo \'<li>\'.$b.\' : \';'."\n".
' if (is_array($f)) {'."\n".
' echo \'<ul>\';'."\n".
' foreach ($f as $fi) {'."\n".
' echo \'<li><code>\';'."\n".
' if (is_array($fi)) {'."\n".
' echo
$fi[0].\'::\'.$fi[1].\'()\';'."\n".
' } else {'."\n".
' echo $fi.\'()\';'."\n".
' }'."\n".
' echo \'</code></li>\';'."\n".
' }'."\n".
' echo \'</ul>\';'."\n".
' } else {'."\n".
' echo $f.\'()\';'."\n".
' }'."\n".
' echo \'</li>\';'."\n".
'}'."\n".
'echo \'</ul>\';'."\n";
return '<?php '.$code.' ?>';
Pour la balise {{tpl:SysInfoBehaviours}}
_______________________________________________
Dev mailing list
[email protected]
http://ml.dotclear.org/listinfo/dev