Data krijgen uit een xml file

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Thomas de vries

thomas de vries

25/03/2014 11:04:41
Quote Anchor link
Goedenmorgen beste php leden,

Ik heb een vraag ik ben bezig om een xml file uit te lezen en dit zo te maken dat ik de gewenste output krijg.

Ik zal een voorbeeld geven zodat je weet wat ik bedoel

dit is mijn xml file
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?xml version="1.0" encoding="UTF-8"?>
<config>
    <webtitle>PandoraFlyff</webtitle>
    <description>Best p-server there is</description>
</config>


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
27
28
<?php
Class Config {
    
    //Automatic load config.xml file from templates dir
    public function __construct() {
        $xml = simplexml_load_file("./lib/Template/config.xml");
        foreach($xml->children() as $key => $val) {
            $this->config[] = $key;
        }

        print_r($xml);
        //return $this->xml;
    }
    
    public function Title() {
        return $this->config[0];
    }

    
    public function Description() {
        return $this->config['description'];
    }

    
    public function MetaTags() {
        
    }
    
}


?>


Nu wil ik dus de title laten zien
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
echo $Config->Title();
?>


Dit werkt als ik de method
title dus een 0 key mee geef.
Echter zou ik dit graag zo willen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
public function Title() {
        return $this->config['webtitle'];
    }

?>


Dit laat alleen niks zien.
Iemand een idee?

Met vriendelijke groet

Toevoeging op 25/03/2014 11:31:04:

Edit: Probleem opgelost door het anders op te roepen.
 
PHP hulp

PHP hulp

18/04/2024 20:15:47
 
Willem vp

Willem vp

25/03/2014 14:30:09
Quote Anchor link
Moet regel 8 niet iets zijn als:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$this
->config[$key] = $val;
?>

?
 
Yoeri Achterbergen

Yoeri Achterbergen

25/03/2014 17:19:24
Quote Anchor link
Beste,

dit heb ik geprobeerd maar komt niets uit de echo, deze geeft dan de foutmelding 500
Wie kan mij helpen met data uit een xml file halen?

De data bevindt zicht in data/prijzen/article_10000.xlm

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?xml version="1.0" encoding="UTF-8"?>

<price>
<LV_ARTICLES_PRICE_SHOW>15.300000</LV_ARTICLES_PRICE_SHOW>
</price>

de bedoeling is dat de prijs uit de file wordt gehaald en via een echo word getoond.

Gr. Yoeri
 
Ger van Steenderen
Tutorial mod

Ger van Steenderen

25/03/2014 18:02:16
Quote Anchor link
Zet eens var_dump op $xml of $xml->children(), daaruit kan je meestal wel afleiden hoe je uit moet lezen.
 
Thomas de vries

thomas de vries

25/03/2014 19:32:03
Quote Anchor link
@Youri

$xml = simplexml_load_file("data/prijzen/article_10000.xlm"); om de file te openen
dan om het uit te lezen

echo $xml->LV_ARTICLES_PRICE_SHOW;

Dat is alles.

Toevoeging op 25/03/2014 20:25:04:

Hmm ik heb nu het volgende probleem

Ik wil dat ik een value kan aanpassen in de xml file

dus stel we hebben dit

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?xml version="1.0"?>

<config>
<web_slider>1</web_slider>
<allow>TRUE</allow>
</config

nu probeer ik het zo te veranderen

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
$xml
= simplexml_load_string("<web_slider>$string</web_slider>");
$xml->web_slider[0] = '0';

echo $xml->asXML("./lib/Template/config.xml");
?>


Output is nu dit

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?xml version="1.0"?>

<web_slider><web_slider>0</web_slider></web_slider>

Hoe kan ik dan een value veranderen zonder dat alles verandert wordt.
Heb al veel gelezen op diverse fora maar kom er niet zo 1,2,3 uit.
 
Yoeri Achterbergen

Yoeri Achterbergen

27/03/2014 17:08:57
Quote Anchor link
aangezien wij meta artikelen werken hebben wij meerdere xml bestanden.
Deze zijn d.m.v. een id code gekoppeld aan de site.
Echter hoe maak ik in php duidelijk dat hij de data uit de goede file haald?

hebben nu dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
class Article extends CustomXML implements ArrayAccess,IteratorAggregate,Countable{
  private $directory,$file,$rowtag,$prefix;
  public  $data=array();

  function
__construct($id,$rowtag = "Article",$prefix = "LV_ARTICLES_") {
    $this->rowtag = $rowtag; $this->prefix = $prefix;
if (is_numeric($id)) { $this->file = $this->directory."article_$id.xml"; } else { $this->file = $id; }
?>
Gewijzigd op 27/03/2014 17:12:01 door Yoeri Achterbergen
 



Overzicht Reageren

 
 

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.