IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[SimpleXML] Warning:simplexml_load_string()expects parameter 1 to be string


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Invité
    Invité(e)
    Par défaut [SimpleXML] Warning:simplexml_load_string()expects parameter 1 to be string
    j'ai ce script :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $xml=simplexml_load_string($Result->Components);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    var_dump($Result->Components)
    ; ce qui m'affiche :
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
     object(stdClass)[105]
      public 'Component' => 
        array (size=3)
          0 => 
            object(stdClass)[104]
              public 'Title' => string 'dessus dessous' (length=14)
              public 'NbSections' => int 2
              public 'NbPages' => int 2
              public 'NumElem' => int 1
              public 'ElemType' => string 'ENCARTE' (length=7)
              public 'ElemSubType' => string 'ENC' (length=3)
              public 'FmtStd' => 
                object(stdClass)[106]
                  ...
              public 'Paper' => 
                object(stdClass)[107]
                  ...
              public 'Ink' => 
                object(stdClass)[108]
                  ...
              public 'Finishing' => 
                object(stdClass)[109]
                  ...
              public 'Misc' => 
                object(stdClass)[110]
                  ...
              public 'Varnish' => 
                object(stdClass)[111]
                  ...
              public 'TechnicalData' => 
                object(stdClass)[112]
                  ...
          1 => 
            object(stdClass)[113]
              public 'Title' => string 'Intérieur 33 feuillets' (length=23)
              public 'NbSections' => int 33
              public 'NbPages' => int 2
              public 'NumElem' => int 2
              public 'ElemType' => string 'ENCARTE' (length=7)
              public 'ElemSubType' => string 'ENC' (length=3)
              public 'FmtStd' => 
                object(stdClass)[114]
                  ...
              public 'Paper' => 
                object(stdClass)[115]
                  ...
              public 'Ink' => 
                object(stdClass)[116]
                  ...
              public 'Finishing' => 
                object(stdClass)[117]
                  ...
              public 'Misc' => 
                object(stdClass)[118]
                  ...
              public 'Varnish' => 
                object(stdClass)[119]
                  ...
              public 'TechnicalData' => 
                object(stdClass)[120]
                  ...
          2 => 
            object(stdClass)[121]
              public 'Title' => string 'Assemblage' (length=10)
              public 'NbSections' => int 35
              public 'NbPages' => int 0
              public 'NumElem' => int 3
              public 'ElemType' => string 'ASS' (length=3)
              public 'ElemSubType' => string 'ASS' (length=3)
              public 'FmtStd' => 
                object(stdClass)[122]
                  ...
              public 'Paper' => 
                object(stdClass)[123]
                  ...
              public 'Ink' => 
                object(stdClass)[124]
                  ...
              public 'Finishing' => 
                object(stdClass)[125]
                  ...
              public 'Misc' => 
                object(stdClass)[126]
                  ...
              public 'Varnish' => 
                object(stdClass)[127]
                  ...
              public 'TechnicalData' => 
                object(stdClass)[128]
                  ...
    au dessous de TechnicalData j'ai d'autre balises que j'ai besoin de parser pour avoir les informations ,comment je peux faire ça avec simplexml
    j'ai fait avec SOAP UI :
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    <Component>
                      <Title>Feuillet CFB</Title>
                      <NbSections>1</NbSections>
                      <NbPages>2</NbPages>
                      <NumElem>3</NumElem>
                      <ElemType>FEU</ElemType>
                      <ElemSubType>FEU</ElemSubType>
                      <FmtStd>
                         <Width>21</Width>
                         <Height>31</Height>
                      </FmtStd>
                      <Paper>
                         <Origin>IN_CATALOG</Origin>
                         <Family>CFB</Family>
                         <Type>EUR</Type>
                         <Color>RO</Color>
                         <Weight>60</Weight>
                         <Height>45</Height>
                         <Width>32</Width>
                      </Paper>
                      <Ink>
                         <FrontColors>1</FrontColors>
                         <FrontColorDesc>NOIR</FrontColorDesc>
                         <BackColors>1</BackColors>
                         <BackColorDesc>NOIR</BackColorDesc>
                         <Coverage>20</Coverage>
                         <FrontProcess>0</FrontProcess>
                         <BackProcess>0</BackProcess>
                         <IdentColors>1</IdentColors>
                         <FrontPlates>1</FrontPlates>
                         <FrontPlateChg>0</FrontPlateChg>
                         <BackPlates>0</BackPlates>
                         <BackPlateChg>0</BackPlateChg>
                      </Ink>
                      <Finishing>
                         <Diecut>0</Diecut>
                         <Desensib>0</Desensib>
                         <Numbering>1</Numbering>
                         <Perfo>1</Perfo>
                      </Finishing>
                      <Misc>
                         <Auto>true</Auto>
                         <TrimBleed>0</TrimBleed>
                         <DoubleCut>0</DoubleCut>
                         <BindingLip>0</BindingLip>
                      </Misc>
                      <Varnish>
                         <Type>NO_VARNISHING</Type>
                         <Faces>0</Faces>
                         <Reserve>0</Reserve>
                      </Varnish>
                      <TechnicalData>
                         <GROUPS xmlns="">
                            <GROUP seq="192"/>
                            <GROUP seq="159"/>
                            <GROUP seq="386"/>
                            <GROUP seq="10087">
                               <FIN seq="7893">
                                  <TEXT PERSO="1">Perfo de souche de 1.3 cm{/CR}</TEXT>
                                  <REM PERSO="1">Perfo de souche de 1.3 cm{/CR}</REM>
    j'ai besoin de récupere la valeur de la balise REM

    Merci en avance
    Dernière modification par Invité ; 10/06/2015 à 13h12.

  2. #2
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 234
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 234
    Points : 15 531
    Points
    15 531
    Par défaut
    déjà tu as un tableau dans "Components" donc tu peux le parcourir avec un "foreach" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    foreach ($Result->Components as $c) {
        if (isset($c->TechnicalData)) {
            var_dump($c->TechnicalData);
        }
    }

  3. #3
    Invité
    Invité(e)
    Par défaut
    merci de votre réponse, en faite comment je faire pour accéder au <FIN seq="7893">
    <TEXT PERSO="1">Perfo de souche de 1.3 cm{/CR}</TEXT>
    <REM PERS et récuper l'infos

    Merci En avance

  4. #4
    Membre émérite Avatar de tsuji
    Inscrit en
    Octobre 2011
    Messages
    1 558
    Détails du profil
    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 558
    Points : 2 736
    Points
    2 736
    Par défaut
    Il faut être beaucoup plus clair. D'abord, si vous faites var_dump en $Result->Components et que vous trouvez object(stdClass)[105] etc etc, il est donc clair que $Result->Components ne soit pas un texte. Donc un simplexml_load_string($Result->Components) ne jamais vous donne quelque chose d'utile.

    Et puis vous dites que "j'ai fait avec SOAP UI" : alors, comment ? Je suppose SOAP UI se trouve coté client et var_dump, $Result etc se trouvent coté serveur ? Il ne faut pas mélanger tous. Donc au fait, on ne sait pas du tout le problème au juste.

Discussions similaires

  1. Warning: mysql_query() expects parameter 1 to be string, object given
    Par AliciaSH dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 14/06/2017, 19h18
  2. [2.x] Warning: strpos() expects parameter 1 to be string, array given in
    Par aitiahcene dans le forum Symfony
    Réponses: 19
    Dernier message: 02/07/2012, 10h56
  3. [MySQL] Warning: mysql_result() expects parameter 1 to be resource ..
    Par camyo dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 01/07/2010, 12h00
  4. [MySQL] Message : Warning: mysqli_free_result() expects parameter 1 to be mysqli_result
    Par Alexandrebox dans le forum PHP & Base de données
    Réponses: 10
    Dernier message: 18/02/2009, 15h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo