Bonjour,
Dans une classe, j'appelle toutes mes propriétés avec une fonction "accesseur" qui renvoie un tableau. Une fois mon tableau constitué, j'aimerais y traiter toutes les chaînes pour les formater en html. J'utilise alors une fonction codée dans un autre script :
Voici l'appel à cette fonction :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 function encode_html($tab) { if (is_array($tab)) { foreach ($tab as $value) { if (is_array($value)) encode_html($value); else if (is_string($value)) $value = htmlentities(stripslashes($value), ENT_QUOTES, 'UTF-8'); } } else if (is_string($tab)) $tab = htmlentities(stripslashes($tab), ENT_QUOTES, 'UTF-8'); }
Ceci ne marche pas... Par contre, si j'applique htmlentities(stripslashes(...)) sur chaque élément de ma classe à la constitution de mon tableau, ça fonctionne... je ne comprends pas pourquoi ma fonction récursive ne modifie pas les éléments de mon tableau..
Code : Sélectionner tout - Visualiser dans une fenêtre à part encode_html($tab);
EDIT: J'ai vérifié, la fonction est bien exécutée pour tous les éléments de mon tableau..
Partager