xml into object

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior SAPUI5 Developer

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Veldhoven Vacature ID: 11512 Introductie Our client leads the worldwide development, production and sales of high-end lithography systems for the semiconductor industry. In short, we make the machines that make computer chips, or integrated circuits. We build some of the most amazing, complex machines that you will ever see – and the software to run them – to develop smaller, faster and still more affordable chips. It is because of our machines that the world’s technology has steadily evolved. As a Senior SAPUI5 Developer your goal is to realize front-ends for our business

Bekijk vacature »

Medior Front-end Developer

Bij Getnoticed doen wij wat we leuk vinden, websites bouwen en online marketing. Voor veel van onze klanten doen we dan ook allebei. Wel zo fijn om campagnes te draaien voor conversiegerichte websites die in eigen beheer zijn. In onze vestiging in Nederweert zit onze development afdeling en worden de websites gebouwd. Op dit moment zijn we op zoek naar jou: dé Medior Front-end Developer die net als wij, het hoofd boven het maaiveld durft uit te steken! In het kort Even een paar punten die omschrijven wat deze toffe baan inhoudt: Het uitwerken van designs tot functionele layouts Je

Bekijk vacature »

.Net Developer

DO - Be passionate, work hard and make it happen! Als .NET Developer maak je deel uit van een enthousiast en gedreven development team, bestaande uit 4 personen. Jij bent de Developer met ervaring die daarbij ook de collega’s weet mee te nemen op een innovatieve reis van nieuwe technologie. De werkzaamheden waar we jouw kennis en ervaring graag voor inzetten zijn met name: Het begeleiden van de transitie naar een volledig Azure landschap met componenten zoals Function Apps, ServiceBus en CosmosDB en de projecten die hieruit voortvloeien Het vormgeven van de integratie architectuur binnen de Microservices omgeving Het bewaken

Bekijk vacature »

Cloud C#.NET developer Mooie voorwaarden en veel v

Bedrijfsomschrijving Na ruim 40 jaar zijn ze op dit moment een van de beste werkgevers van Nederland met uitstekende arbeidsvoorwaarden. Op dit moment zijn ze in Nederland koploper op het gebied van "Smart service", ze zijn constant bezig met het verder ontwikkelen van de techniek voor financiële zekerheid. Je zult hier komen te werken bij een afdeling die maatschappelijk een grote toegevoegde waarde heeft. Zo zorg je er indirect samen met je team ervoor dat velen de zorg kunnen krijgen die ze nodig hebben. Op de afdeling zit 25 man, onderverdeeld in vier Scrum teams. Ze werken op een agile

Bekijk vacature »

Java-softwaredeveloper

Wat je gaat doen: Dit ga je doen Daar kunnen we heel kort over zijn: software ontwikkelen met de agile-/scrumteams van toonaangevende organisaties. Zoals ministeries, gemeentes, financiële instellingen en retail- en energiebedrijven. En als het bij je past, begeleid je collega-developers in het ontwikkelproces. Doordat je tijdelijk aan een opdracht werkt, doe je in korte tijd veel mooie ervaringen op en leer je nieuwe technieken en tools kennen. Je teamleden werken bijvoorbeeld met Spring, JPA/Hibernate, AJAX, REST/JSON, GIT, AWS en TDD. Het interessante is dat jij volledig in control bent en zelf kiest welke opdrachten je oppakt. Het soort rol,

Bekijk vacature »

Robot Programmeur

Bedrijfsomschrijving: Locatie: regio Almelo Deze dochteronderneming is gevestigd in Almelo en al sinds 1999 een specialist op het gebied van productieautomatisering, robotisering en metaalbewerking. Met speciaalmachines, robotisering en productmechanisatie als belangrijkste werkgebieden gaan ze de strijd aan met de meest uitdagende vraagstukken, die de efficiency van de productieprocessen moet verbeteren. Daarin speelt innovatie en nieuwe technologieën een grote rol en dit merk jij als Robot Programmeur zeker. Kortom; zij maken producten die nog niet bestaan! Sinds 2018 is dit bedrijf onderdeel van een internationale groep met zeven productielocaties in Maleisië, China, Singapore, de USA, Tsjechië en Nederland. Duik jij als

Bekijk vacature »

Senior Campaign Developer E-mailmarketing

Wil jij werken bij een van de grootste e-mailmarketing bureaus van Nederland? Wil jij werken voor merken waar jij affiniteit mee hebt en je voorkeur naar uit gaat? Wil je met jouw kennis & strategische adviezen impact maken bij je klanten? En lijkt het je wat om ergens te werken waar ‘het voortouw pakken’ wordt gewaardeerd? Zo ja? Lees verder! Jouw nieuwe werkgever: gaat alleen voor langdurige relaties & gelooft erin dat jij als happy bent, dat zich vertaalt naar je werk en de klant. Er valt veel aan te pakken en de organisatie blijft maar groeien ondanks COVID-19 situatie.

Bekijk vacature »

Freelance Frontend Developer (ZZP)

Belastingdienst B/cao Startdatum inzet : 19 december 2022 Tijdelijke functie, met optie op vast Uren per week : 36 Standplaats (in overleg) : Apeldoorn Op dit moment hebben wij frontend developers met een nieuwsgierige en pro actieve houding nodig die zich hoofdzakelijk richten op het helpen bij het bouwen van open formulieren. Deze formulieren worden gemaakt met verschillende producten. Wij werken met Bold (het Belastingdienst Design System), form.io, moderne frameworks en integratiemogelijkheden. Op het gebied van de overige tooling wordt je voor zover nodig ingewerkt. Van jou als frontend developer wordt verwacht dat je deze producten op de juiste manier

Bekijk vacature »

Medior Frontend developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Bij DPA GEOS werken onze consultants als Frontend Developer in Agile teams bij onze klanten en zijn ze verantwoordelijk voor de grotere webapplicaties. Wil jij dit ook, want we zijn op zoek naar enthousiaste Frontend Developers om ons development team te versterken. Je draagt positief bij aan de teamgeest binnen een projectteam je kijkt verder dan je eigen rol. Eventueel begeleid je ook andere ontwikkelaars in het softwareontwikkelproces. Je gaat webapplicaties maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit

Bekijk vacature »

C# Developer Research and Development - Delft

Vacature details Vakgebied: Software/IT Opleiding: Medior Werklocatie: Delft Vacature ID: 6307 Introductie C# Developer Research and Development - Delft - Onze klant is één van de meest innovatieve bedrijven in de region van Delft. Op dit moment zijn ze voor het innovatie centrum. In het innovatie centrum wordt gewerkt aan de nieuwste technieken voor navigatie software. R&D / C# / Pattern Recognition / Algorithms / 3d Data / DotNET Functieomschrijving Als C# Developer kom je te werken in een innovatief scrumteam. We ontwikkelen en door ontwikkelen de nieuwste technieken op het gebied van navigatie software. Deze software wordt onder andere

Bekijk vacature »

Freelance Frontend Developer (ZZP)

Belastingdienst B/cao Startdatum inzet : 19 december 2022 Tijdelijke functie, met optie op vast Uren per week : 36 Standplaats (in overleg) : Apeldoorn Op dit moment hebben wij frontend developers met een nieuwsgierige en pro actieve houding nodig die zich hoofdzakelijk richten op het helpen bij het bouwen van open formulieren. Deze formulieren worden gemaakt met verschillende producten. Wij werken met Bold (het Belastingdienst Design System), form.io, moderne frameworks en integratiemogelijkheden. Op het gebied van de overige tooling wordt je voor zover nodig ingewerkt. Van jou als frontend developer wordt verwacht dat je deze producten op de juiste manier

Bekijk vacature »

Fullstack Javascript Developer - Vue/Node.js

Bedrijfsomschrijving Ben jij op zoek naar een nieuwe uitdaging als Javascript Developer? En werk je graag met Vue en Node.js? Dan ligt hier een mooie uitdaging voor jou! Dit bedrijf koppelt data aan de woningmarkt waardoor wij als koper erop kunnen vertrouwen dat we ook in de toekomst kunnen beschikken over betaalbare en duurzame woningen. Dat doen ze door samen te werken met vastgoedbeleggers, gemeentes en woningcorporaties. De data wordt uitgewisseld en geanalyseerd die leidt tot kennis en inzicht. Ze bestaan inmiddels 6 jaar en hebben een constante en sterke groei doorgemaakt. Op dit moment werken er 20 medewerkers, echter

Bekijk vacature »

Robotprogrammeur

Bedrijfsomschrijving: Locatie: regio Kampen Dit internationale bedrijf is één van Europa’s meest toonaangevende machinebouwers. Ze ontwikkelen en produceren hoogwaardige robotsystemen volledig in eigen beheer. Deze robotsystemen worden geïntegreerd in diverse hoogwaardige productieprocessen in verschillende branches. De onvergelijkbare systemen die deze organisatie ontwikkelt en produceert en de flexibiliteit van de machineconcepten zijn binnen deze markt erg opvallende kenmerken die zijn ontwikkeld op basis van jarenlange ervaring en expertise. Ze kenmerken zich door innovatie, kwaliteit en ervaring zodat de klanten altijd voorop blijven lopen in de sector. Als Software Engineer Robotica ben je verantwoordelijk voor het optimaliseren van het robotprogramma om tot

Bekijk vacature »

Java-softwaredeveloper

Wat je gaat doen: Dit ga je doen Daar kunnen we heel kort over zijn: software ontwikkelen met de agile-/scrumteams van toonaangevende organisaties. Zoals ministeries, gemeentes, financiële instellingen en retail- en energiebedrijven. En als het bij je past, begeleid je collega-developers in het ontwikkelproces. Doordat je tijdelijk aan een opdracht werkt, doe je in korte tijd veel mooie ervaringen op en leer je nieuwe technieken en tools kennen. Je teamleden werken bijvoorbeeld met Spring, JPA/Hibernate, AJAX, REST/JSON, GIT, AWS en TDD. Het interessante is dat jij volledig in control bent en zelf kiest welke opdrachten je oppakt. Het soort rol,

Bekijk vacature »

Senior Java developer (backend)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 10:23:50
Quote Anchor link
Hallo allemaal,

Iemand enig idee hoe je xml in een php object kunt plaatsen? Zodat je de xml values terug krijgt?

Ik probeer het momenteel op de volgende manier maar dat wilt niet echt werken, het is trouwens voor mijn soapclient webservice script.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
$DisplayAttachment = $client->dbDocAttachmentList($srv_name, $db_name, $unid, 'Book_Cover');

echo $DisplayAttachment->getName() . "<br />";

foreach($DisplayAttachment->attachmentslist() as $attachment)
  {
  echo $child->getName() . ": " . $attachment . "<br />";
  }


De XML:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:urn="urn:DefaultNamespace">
   <soapenv:Header/>
   <soapenv:Body>
      <urn:SRVNAME>flexdomino/flex2domino</urn:SRVNAME>
      <urn:DBNAME>flex/flexdemo.nsf</urn:DBNAME>
      <urn:NOTEID>18E6</urn:NOTEID>
      <urn:RTFIELD>Book_Cover</urn:RTFIELD>
   </soapenv:Body>
</soapenv:Envelope>


Bedankt!
Gewijzigd op 09/05/2011 10:26:09 door Ben Van de Voorde
 
PHP hulp

PHP hulp

05/12/2022 11:32:28
 
Kees Schepers

kees Schepers

09/05/2011 10:35:32
Quote Anchor link
Dit kun je doen met new simplexml($jeXML);
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 10:54:46
Quote Anchor link
Dan kom ik uit op deze functie maar kom hier ook niet echt veel verder mee.

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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
function simpleXMLToArray($xml,
                    $flattenValues=true,
                    $flattenAttributes = true,
                    $flattenChildren=true,
                    $valueKey='@value',
                    $attributesKey='@attributes',
                    $childrenKey='@children'){

        $return = array();
        if(!($xml instanceof SimpleXMLElement)){return $return;}
        $name = $xml->getName();
        $_value = trim((string)$xml);
        if(strlen($_value)==0){$_value = null;};

        if($_value!==null){
            if(!$flattenValues){$return[$valueKey] = $_value;}
            else{$return = $_value;}
        }

        $children = array();
        $first = true;
        foreach($xml->children() as $elementName => $child){
            $value = simpleXMLToArray($child, $flattenValues, $flattenAttributes, $flattenChildren, $valueKey, $attributesKey, $childrenKey);
            if(isset($children[$elementName])){
                if($first){
                    $temp = $children[$elementName];
                    unset($children[$elementName]);
                    $children[$elementName][] = $temp;
                    $first=false;
                }
                $children[$elementName][] = $value;
            }
            else{
                $children[$elementName] = $value;
            }
        }
        if(count($children)>0){
            if(!$flattenChildren){$return[$childrenKey] = $children;}
            else{$return = array_merge($return,$children);}
        }

        $attributes = array();
        foreach($xml->attributes() as $name=>$value){
            $attributes[$name] = trim($value);
        }
        if(count($attributes)>0){
            if(!$flattenAttributes){$return[$attributesKey] = $attributes;}
            else{$return = array_merge($return, $attributes);}
        }
        
        return $return;
    }
 
Kees Schepers

kees Schepers

09/05/2011 11:23:02
Quote Anchor link
Ik snap niet precies wat je wilt. Wil je nu een XML (SOAP request) in een array of object zetten?

Als je het namelijk met simplexml doet kun je hem uitlezen door bijv $obj->Body te doen. Je moet wel opletten met de namespaces.
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 11:29:20
Quote Anchor link
Kun je me een voorbeeldje geven hoe ik dit kan uitlezen met mijn soap reqeust?

Toevoeging op 09/05/2011 11:44:59:

Zoiets als het volgende werkt niet.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
    $DisplayAttachment = $client->dbDocAttachmentList($srv_name, $db_name, $unid, 'Book_Cover');
    
    $xml = simplexml($DisplayAttachment);
    
     echo $xml->attachments();
      echo $xml->file();
    
 
Kees Schepers

kees Schepers

09/05/2011 12:02:01
Quote Anchor link
Je leest nodes niet uit als functies in SimpleXML. Maar ik zie ook helemaal geen 'attachments' node in je voorbeeld XML.

Wat krijg je letterlijk als je var_dump($DisplayAttachment); doet?
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 12:10:49
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
object(SimpleXMLElement)#4 (1) { ["file"]=> array(2) { [0]=> object(SimpleXMLElement)#5 (3) { ["name"]=> string(8) "ATT1UBD5" ["source"]=> string(8) "ATT1UBD5" ["size"]=> string(5) "29462" } [1]=> object(SimpleXMLElement)#6 (3) { ["name"]=> string(51) "149120_469476713644_717498644_5950953_2388345_n.jpg" ["source"]=> string(51) "149120_469476713644_717498644_5950953_2388345_n.jpg" ["size"]=> string(5) "29462" } } }
Gewijzigd op 09/05/2011 12:11:07 door Ben Van de Voorde
 
Kees Schepers

kees Schepers

09/05/2011 13:06:44
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
foreach($DisplayAttachment->file as $file) {
  echo (string)$file['name'] . (string)$file['source'] . (string)$file['size'];
}

?>


Dat zal waarschijnlijk al werken ;)
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 13:49:55
Quote Anchor link
Krijg de volgende error:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
Warning: Invalid argument supplied for foreach() in /var/www/vhosts/zweinsteinonline.nl/httpdocs/test/test/books.php on line 80
 
Kees Schepers

kees Schepers

09/05/2011 13:53:57
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
foreach($DisplayAttachment['file'] as $file) {
  echo (string)$file['name'] . (string)$file['source'] . (string)$file['size'];
}

?>


Dan.. ? Ik weet niet goed in welke context die is natuurlijk.

Probeer anders eens dit om de structuur van de XML te bekijken:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
var_dump($DisplayAttachment->asXML());
?>
Gewijzigd op 09/05/2011 14:30:22 door kees Schepers
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 13:57:34
Quote Anchor link
Als ik letterlijk deze var_dump gebruik krijg ik NULL terug als output.
Hij is in de goede context.

Ik krijg de volgende output als ik het volgende gebruik
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
$xml = simplexml_load_string($DisplayAttachment);

var_dump($xml);


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
object(SimpleXMLElement)#4 (1)
    {
        ["file"]=> array(2)
        {
            [0]=> object(SimpleXMLElement)#5 (3)
            {
                ["name"]=> string(8) "ATT1UBD5"
                ["source"]=> string(8) "ATT1UBD5"
                ["size"]=> string(5) "29462"
            }
            [1]=> object(SimpleXMLElement)#6 (3)
            {
                ["name"]=> string(51) "149120_469476713644_717498644_5950953_2388345_n.jpg"
                ["source"]=> string(51) "149120_469476713644_717498644_5950953_2388345_n.jpg"
                ["size"]=> string(5) "29462"
            }
        }
    }
Gewijzigd op 09/05/2011 14:00:06 door Ben Van de Voorde
 
Kees Schepers

kees Schepers

09/05/2011 14:22:15
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php
foreach($xml->file as $file) {
  echo (string)$file['name'] . (string)$file['source'] . (string)$file['size'];
}

?>
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 14:33:15
Quote Anchor link
Helaas nog steeds dezelfde error.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
$DisplayAttachment = $client->dbDocAttachmentList($srv_name, $db_name, $unid, 'Book_Cover');
    
foreach($DisplayAttachment->file as $file) {
  echo (string)$file['name'] . (string)$file['source'] . (string)$file['size'];
}
Gewijzigd op 09/05/2011 14:59:05 door Ben Van de Voorde
 
Kees Schepers

kees Schepers

09/05/2011 15:48:36
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$DisplayAttachment
= $client->dbDocAttachmentList($srv_name, $db_name, $unid, 'Book_Cover');
    
$xml = simplexml_load_string($DisplayAttachment);


foreach($xml->file as $file) {
  echo (string)$file['name'] . (string)$file['source'] . (string)$file['size'];
}

?>
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 15:52:05
Quote Anchor link
Krijg nu geen error meer maar hij display de echo nu niet
 
Kees Schepers

kees Schepers

09/05/2011 16:09:32
Quote Anchor link
Bart, ik geef je wel tekens stukjes code maar volgens mij snap je het niet helemaal. Je zult iets meer je best moeten doen om het op te lossen. Waarom bijvoorbeeld de echo niks terug geeft? Dat komt waarschijnlijk omdat $xml->file geen array terug geeft en dus niet gaat lopen.

Hoe kan je erachter komen waarom? Door eerst var_dump($xml); boven de foreach te doen. Dan zie je wat de data structuur is van de variabele
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 16:11:09
Quote Anchor link
Snap best wat je bedoeld kees ben ook echt heel erg blij met je hulp alleen heb zelf echt bijna alles al geprobeerd en ik krijg enkeld resultaat als ik het volgende doe.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
$xml = simplexml_load_string($DisplayAttachment);
$data = $xml->file[0]->name;
echo $data;

$data = $xml->file[1]->name;
echo $data;


maar ik wil het in een foreach hebben
 
Kees Schepers

kees Schepers

09/05/2011 16:16:47
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
$DisplayAttachment
= $client->dbDocAttachmentList($srv_name, $db_name, $unid, 'Book_Cover');
    
$xml = simplexml_load_string($DisplayAttachment);


foreach($xml->file as $file) {
  echo 'Info: ' . (string)$file->name . (string)$file->source . (string)$file->size;
}

?>
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 16:24:33
Quote Anchor link
Dit werkt heel erg bedankt!!
 
Kees Schepers

kees Schepers

09/05/2011 16:29:15
Quote Anchor link
Weet je ook waarom?
 
Ben Van de Voorde

Ben Van de Voorde

09/05/2011 17:31:14
Quote Anchor link
Nu ga je direct met de -> in de parameters.
 



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.