Informatie opslaan

Je kan de aangepaste informatie van de vorige pagina ook weer terugstoppen in ons bestand. Beide methodes uitgelegt. Vergeet niet dat je bestandje een CHMOD van 777 moet hebben.

Methode 1:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$xml
= $users->asXML();
$filestr  = "<?php\n";
$filestr .= "\$xml_users = <<<EOF\n";
$filestr .= $xml.'\n';
$filestr .= 'EOF;\n';
$filestr .= '?>';

file_put_contents('users.php', $filestr);
?>


Methode 2:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$xml
= $users->asXML('cached_users.xml');
?>


$user->asXML(); slaat op de asXML() functie die het bestand weer terug compileerd naar XML 1.0 en file_put_contents() is natuurlijk de PHP 5 functie waarmee we ons zooitje in een bestand gooien. :)
Conclusie
Ik heb nu de basis van SimpleXML behandelt. Je weet nu hoe je een bestand moet openen en informatie in een object moet stoppen, je weet nu hoe je die informatie kan gebruiken, aanpassen, en weer terug opslaan. Ik hoop dat je er wat aan gehad hebt! Maar er zijn nog een aantal functie die ik niet (uitgebreid) behandeld hebt, maar ik zal de functie en gebruik ervan even kort opschrijven:

SimpleXMLelement->asXML( [bestandsnaam] );
Compileerd SimpleXMLelement naar XML 1.0 data. Als bestandsnaam is gegeven schrijft deze functie de data gelijk naar een bestand toe, en anders, met de bestandsnaam parameter dus niet gegeven, geef asXML() een string terug met de XML data. Als er iets fout gaat geeft deze functie FALSE terug.

SimpleXMLelement->attributes ( );
Geeft een SimpleXMLelement terug met de attributen van de SimpleXMLelement die gegeven is.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
$string
= <<<XML
<a>
 <foo name="one" game="lonely">1</foo>
</a>
XML
;

$xml = simplexml_load_string($string);
foreach($xml->foo[0]->attributes() as $a => $b) {
   echo $a,'="',$b,"\"\n";
}

?>

Dit output:
name="one"
game="lonely"

SimpleXMLelement->children( );
Geeft de children van een member. Voorbeeld:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
<?php
$xml
= simplexml_load_string(
'<person>
 <child role="son">
  <child role="daughter"/>
 </child>
 <child role="daughter">
  <child role="son">
   <child role="son"/>
  </child>
 </child>
</person>'
);

foreach ($xml->children() as $second_gen) {
   echo ' The person begot a ' . $second_gen['role'];

   foreach ($second_gen->children() as $third_gen) {
       echo ' who begot a ' . $third_gen['role'] . ';';
  
       foreach ($third_gen->children() as $fourth_gen) {
           echo ' and that ' . $third_gen['role'] .
               ' begot a ' . $fourth_gen['role'];
       }
   }
}

?>
Dit output:
The person begot a son who begot a daughter; The person
begot a daughter who begot a son; and that son begot a son

SimpleXMLelement->xpath( path );
Voert een Xpath query uit op Xpath 'path'. Geeft een array met SimpleXMLelementen terug.

simplexml_import_dom ( DOMNode node )
Verkrijgt een SimpleXMLelement uit de DOMNode node. Bij falen geeft deze functie false terug.

« Lees de omschrijving en reacties

Inhoudsopgave

  1. Inleiding
  2. Informatie uitlezen
  3. Informatie opslaan en ophalen
  4. Informatie opslaan

PHP tutorial opties

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.