2010-02-04 1 views

Répondre

0

Dans quelqu'un SimpleXml PHP manual a donné un bon exemple dans la section des commentaires.

Voici comment je l'ai fait fonctionner.

Supposons que vous avez le code XML suivant dans un fichier xml.php:

<?php 
$string = <<<XML 
<Row> 
    <Cell> 
    <Data>Dolly Parton</Data> 
    </Cell> 
    <Cell> 
    <Data>Islands in the Stream</Data> 
    </Cell> 
    <Cell> 
    <Data>what</Data> 
    </Cell> 
    <Cell> 
    <Data>1-29-2010</Data> 
    </Cell> 
</Row> 
XML; 

Vous pouvez lire dans ce fichier et ajoutez les attributs que vous voulez en utilisant XPath.

<?php 
     include("xml.php"); 

     $sxe = new SimpleXMLElement($string); 

     $data = $sxe->xpath('//Data'); 

    foreach ($data as $value) 
    { 
     $value->addAttribute('ss:Type', 'String', 'http://www.w3.org/2001/XMLSchema-instance'); 
     } 

     echo $sxe->asXML(); 

    ?> 

Ceci est la sortie je reçois:

<Row> 
    <Cell> 
    <Data xmlns:ss="http://www.w3.org/2001/XMLSchema-instance" ss:Type="String">Dolly Parton</Data> 
    </Cell> 
    <Cell> 
    <Data xmlns:ss="http://www.w3.org/2001/XMLSchema-instance" ss:Type="String">Islands in the Stream</Data> 
    </Cell> 

    <Cell> 
    <Data xmlns:ss="http://www.w3.org/2001/XMLSchema-instance" ss:Type="String">what</Data> 
    </Cell> 
    <Cell> 
    <Data xmlns:ss="http://www.w3.org/2001/XMLSchema-instance" ss:Type="String">1-29-2010</Data> 
    </Cell> 
</Row> 
+0

Salut Merci beaucoup, mais encore il ne fonctionne pas, je peux donner le code que je veux somthing comme ça Dolly Parton Îles dans le flux 254.233.11.33 1-29-2010 et j'essayer avec $ data-> addAttribute ("ss: Type", "String", "urn: schemas- microsoft-com: office: tableur '); mais toujours ne fonctionne pas plz aider avoir un jour de rêve –

+0

Ok, j'ai ajouté plus de code à ma réponse. Faites-moi savoir si je suis sur le bon chemin. Travaillez-vous en PHP ou pas? –

+0

oui je travaille en php, merci pour l'aide mais je reçois par simpleDOM classe dans google code, puis je copie l'attribut d'un élément à un autre, maintenant j'ai une autre requête comment modifier les valeurs d'attributs qui ont le namesapce, quand j'essaie de le modifier à créer le nouvel attribut sans l'espace de noms $ table [0] -> setAttributes (array ('ExpandedRowCount' => 5)) que somthing de sortie comme Merci pour everthing ont jour de rêve –

Questions connexes