Bonjour,
en fait j'ai un objet qui contient des balise xml en fait je veux filtrer la chaîne qui commencer par Fm
je mismais ça marche pasCode:$bject->proprieter->Fm%
Merci de votre aide
Version imprimable
Bonjour,
en fait j'ai un objet qui contient des balise xml en fait je veux filtrer la chaîne qui commencer par Fm
je mismais ça marche pasCode:$bject->proprieter->Fm%
Merci de votre aide
La solution la plus simple est de récupérer tous les enfants et faire le filtre au niveau du traitement.
En supposant que tu parses ton xml en utilisant SimpleXml, ça donnerait quelque chose comme ça :
Bon évidement, c'est une méthode assez bourrine. Si tu as beaucoup d'enfants et que seulement quelques uns t'intéressent, il serait judicieux de chercher une autre solution.Code:
1
2
3
4
5
6
7
8
9 $props = $bject->proprieter->getChildren(); foreach($props as $prop) { if (stripos($prop->getName(), 'Fm') === 0) { // on garde } else { // on ignore } }
Merci de votre réponse ,en fait je utilise pas simpleXmpl ce que j'ai tout simplement un object qui contient des balises
en fait le nom de balise parfois FmtBold ou FmtCOld j'ai besoin de recupérer cette balise quelque soit si pourcela j'utilisepour tout qui commencer par Fmt mais ça donner rienCode:$object->property->Fmt% %
Merci en avance
:koi: J'ai rien compris en fait... Tu as un objet et veut uniquement lire les attributs qui commencent par 'Fmt' ? le fait que ce soit un XML à l'origine n'a en fait aucun impact ?
Tu peux essayer d'adapter mon code avec quelque chose comme ça :
Code:
1
2
3
4
5
6
7 foreach($object->property as $propName => $propVal) { if (stripos($propName, 'Fm') === 0) { // on garde } else { // on ignore } }
merci mais en fait c'est pas un attribut c'est propriéter aussi :
mon objet contient cela :dans autre CasCode:<comps><comp><FmtCold><high><width></FmtCold></comp></comps>
tant je récuper l'objet dynamique je sais pas est ce que si FmtBold ou FmtColdCode:<comps><comp><FmtBold><high><width></FmtBold></comp></comps>
si pour cela j'ai besoin de faire $object->comps->comp->Fmt% mais ça marche pas
Merci en avance
Bon je comprends ce que tu veux faire, mais je n'arrive pas à comprendre comment tu le fais. Peux-tu montrer le code qui va avant ta tentative avec $object->comps->comp->Fmt% ?
Parce que bon, il doit bien y avoir un parsing de xml quelque part dans l'équation...
Au passage, je ne sais pas où tu es allé chercher ce "%", mais à ma connaissance en dehors d'une recherche SQL, ça n'a aucune chance de marcher...
voilà mon var_dump de $comp:
merci en avanceCode:
1
2
3
4
5
6
7
8
9 object(stdClass)[155] public 'Title' => string 'Assemblage' (length=10) public 'NbSections' => int 35 public 'MaxNumberOfUps' => int 0 public 'FmtStd' => object(stdClass)[156] public 'Width' => float 21 public 'Height' => float 14.8