xml into object

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

.Net ontwikkelaars voor de zorgsector

Bedrijfsomschrijving Voor onze klant in de omgeving van Zwolle zijn wij op zoek naar een ervaren .Net ontwikkelaar, bij voorkeur met ervaring binnen de belangrijkste sector van Nederland, namelijk: de zorgsector. Deze internationale organisatie ontwikkelt software voor de zorgsector. Er werken zo'n 25 medewerkers hard aan een oplossing die gebruikt wordt door heel Nederland. Er heerst een informele sfeer waarbij er altijd ruimte is voor een grapje. Je collega's zijn stuk voor stuk sterke ontwikkelaars vanuit verschillende achtergronden en met verschillende leeftijden. Je komt hier terecht in een organisatie die zich hard inzet om de zorgsector te verbeteren. De mogelijkheden

Bekijk vacature »

.NET software developer

Functie omschrijving Voor een gewilde werkgever in omgeving Roosendaal zijn wij op zoek naar een back-end software developer met een aantal jaar werkervaring. Je krijgt een plekje in het workflow team en je zal betrokken worden bij het bouwen van nieuwe software, en het optimaliseren van bestaande code. Je werkt bij dit bedrijf in een Scrum team waarin je soms klantcontact hebt. Jouw werkzaamheden zullen er als volgt uit zien: Je krijgt een plekje op de in-house IT afdeling. Deze afdeling bestaat uit zo'n 12 collega's, verdeeld over verschillende specialisaties (BI, Beheer, Business software & workflow). De vacature staat open

Bekijk vacature »

Junior .NET developer

Functie Om half 9 kom jij binnen en pak jij als eerst natuurlijk een bakje koffie of thee. Vervolgens ga jij je voorbereiden op de stand-up van kwart voor 9. Zijn er bijvoorbeeld dingen waar jij nog tegen aan loopt? Of is er nog code die getest of gereviewd moet worden? Vervolgens starten jullie met de stand up en na de stand up zoeken jullie elkaar op en gaan jullie aan de slag. Als team met 6 developers werken jullie in drie wekelijkse sprints. Het einde van een sprint is altijd op een donderdag zodat jullie op vrijdag de demo

Bekijk vacature »

Traineeship Full Stack .NET Developer

Dit ga je doen Start op 7 augustus 2023 bij de Experis Academy en ontwikkel jezelf tot een gewilde Full Stack .NET Developer. Maar hoe ziet het traineeship eruit en wat kun je verwachten? Periode 1 De eerste 3 maanden volg je fulltime, vanuit huis, een op maat gemaakte training in teamverband. Je leert belangrijke theorie en krijgt kennis van de benodigde vaardigheden en competenties die nodig zijn om de IT-arbeidsmarkt te betreden. Zowel zelfstandig als in teamverband voer je praktijkopdrachten op het gebied van front- en backend development uit. Wat er per week op het programma staat kun je

Bekijk vacature »

.NET developer

Functie Jij begint als .NET ontwikkelaar in een team met 10 andere Software Engineers. De werkzaamheden zijn afwisselend, zo kan het dat jij bezig bent met volledig nieuwe features of het door ontwikkelen van bestaande sites of shops. Wij ontwikkelen web applicaties, maar ook mobiele applicaties. Daarnaast bijt jij je soms ook van in externe koppelingen met systemen zoals een ERP. Als team is er een duidelijke focus m.b.t. het waarborgen van de performance en snelheid van webshops. Ook zijn wij expert op het gebied van configuratoren. Kortom enorm veel afwisselende werkzaamheden! Ook jouw werkplek kan afwisselend zijn. Soms heb

Bekijk vacature »

REMOTE - Front-end Angular developer

Functie Het IT-team bestaat momenteel uit de IT Manager, 2 back-end developers, 1 fullstack developer, 1 designer en een DevOps engineer. Ze zijn momenteel op zoek naar een ervaren Front-end developer die autonoom en gedisciplineerd aan de slag gaat, en bij aanvang als enige developer met hun Front-end applicaties bezig is. Wel hebben ze de ambitie om hier snel een 2e developer bij te vinden die jij dan ook zal kunnen aansturen/begeleiden. Je zult aan de slag gaan met het doorontwikkelen van hun bestaande UI in Angular. Maar ook het ontwikkelen van een mobiele app. Hierbij hechten ze veel waarde

Bekijk vacature »

Software Developer

Functie omschrijving Veel begeleiding en de kans om je verder te ontwikkelen als software developer. Dat kunnen wij jou bieden bij deelname aan deze leuke traineeship. Je krijgt een mentor toegewezen die jou alle kneepjes van het vak leert. Heb jij al wat ervaring als software developer? Daar worden wij heel blij van! Lees snel verder! Bedrijfsprofiel Als software developer neem je deel aan een trainings programma in de omgeving van Haarlem waar je persoonlijk wordt begeleidt, zodat je alle kneepjes van het vak leert. Aan de hand van jouw kennis en ervaring krijg je een persoonlijk opleidingstraject. Je gaat

Bekijk vacature »

Lead C++ Developer

De rol van Lead C++ Developer Als Lead C++ developer bij KUBUS word je verantwoordelijk voor het implementatie design van requirements en de software architectuur van de desktop applicaties van BIMcollab, ons platform voor 3D model-validatie en issue-management bedoeld om de kwaliteit van 3D design-modellen voor gebouwen te verbeteren. Betere 3D modellen leiden tot betere gebouwen, dus zo draag je bij aan verduurzaming van de gebouwde omgeving met slimmer gebruik van materialen, minder verspilling en energie-efficiënte gebouwen. Een goede gebruikerservaring staat bij ons hoog in het vaandel; we gaan in onze ontwikkeling voor innovatie en kwaliteit. In je rol als

Bekijk vacature »

Android developer

De functie Schiphol is een plek om te reizen, te verblijven en te werken. Door middel van data en technologie richten we op al deze gebieden het leef- en werkklimaat optimaal in en zorgen we voor een slimmere en efficiëntere operatie. Wij ontwikkelen nieuwe producten en diensten vanuit de wensen en behoeften van onze klanten, voorspellen passagier flows en testen digitale oplossingen om rijen en andere pijnpunten in het proces te verminderen. Met slimme feedback van sensortechnologie maken we zelfs data van toiletten en stoelen inzichtelijk en bruikbaar. Het Commercial Platform bestaat uit multidisciplinaire teams met een end-2-end verantwoordelijkheid voor

Bekijk vacature »

Full Stack Developer/ Applicatie Ontwikkelaar

Wat jij doet Als Applicatie Ontwikkelaar ben je onderdeel van het team die de Rimote omgeving ontwikkeld en onderhoud. Hierbij kan je denk aan de cloud, on premise en webapplicaties welke worden gebruikt in bijvoorbeeld industriële bakkerijen, biogasinstallaties en kwekerijen. Deze applicaties verzorgen (remote) de aansturing en monitoring van processen, machines en robots. Van a tot z ben je betrokken bij projecten. Dit betekent vanaf ontwerp tot oplevering. Je moet samen met jouw team een goed product neer zetten. Dit begint met het opzetten van het ontwerp. De basis van de software moet staan als een huis. Daarvoor moet jij

Bekijk vacature »

Oracle APEX developer

Wat je gaat doen: Als Oracle APEX ontwikkelaar bij DPA werk je samen met collega’s aan de meest interessante opdrachten. Je zult je ervaring met SQL, PL/SQL, JavaScript, HTML en CSS inzetten om wensen van opdrachtgevers te vertalen naar technische oplossingen. Je werk is heel afwisselend, omdat DPA zich niet beperkt tot een specifieke branche. Zo ben je de ene keer bezig binnen de zorgsector, de andere keer is dit bij de overheid. Wat we vragen: Klinkt goed? Voor deze functie breng je het volgende mee: Je hebt een hbo- of universitaire opleiding afgerond Je hebt 2 tot 5 jaar

Bekijk vacature »

.NET Developer Azure

Dit ga je doen Het ontwerpen en bouwen van diverse applicaties (C#, ASP.NET, MVC); Het ontwikkelen van Webservices (WCF); Het meewerken aan de transitie naar Azure; Het samenwerken met collega's binnen een Scrumteam en meedenken over de User Stories; Het bouwen van unittesten; Meedenken over nieuwe tooling, ontwikkelingen en technologieën in de markt. Hier ga je werken Je komt te werken bij een organisatie die verantwoordelijk is voor de ontwikkeling van verschillende portalen. Deze portalen worden gebruikt door diverse partijen en jouw taak is om ervoor te zorgen dat deze optimaal functioneren. Je wordt onderdeel van een Scrumteam en werkt

Bekijk vacature »

Digital Agency is looking for PHP developers!

Functie The team currently has 20 colleagues, consisting of developers (front and backend) and the operations team, which also includes management and two scrum masters. They are looking for a PHP developer who is able to work independently. You will work in one of the three scrum teams and start working on a project for the customer. The interesting thing about this is that you do have variety in terms of work, but at the same time continuously work for existing customers. This also gives you the opportunity to really go into depth and develop innovative technical solutions. In terms

Bekijk vacature »

Full Stack Developer

Dit ga je doen Ontwikkelen van Product Informatie Management (PIM) systemen; Werken aan zowel grotere als kleine projecten voor toonaangevende klanten binnen o.a. de retail; Verantwoordelijk voor de front-end werkzaamheden; Naast de front-end werk je ook aan de backend. Hier ga je werken Als Full Stack Developer komt je te werken binnen een vooruitstrevende organisatie die Product Informatie Management (PIM) systemen levert aan hun klanten. Hun klanten zijn toonaangevende bedrijven binnen o.a. de retail. De organisatie zit gevestigd in regio Zwolle en bestaat uit zo'n 35 medewerkers, waarvan 30 IT. Je komt te werken binnen één van de zelfsturende development

Bekijk vacature »

Applicatiebeheerder/ Ontwikkelaar

Dit ga je doen - Verantwoordelijkheid dragen voor het complexe applicatielandschap; - Schakelen met eindgebruikers en leveranciers; - Verdeling in werkzaamheden tussen dagelijks beheer ontwikkelen; - Het analyseren van de behoeften van gebruikers en het vertalen hiervan naar functionele specificaties voor de applicaties; - Actief bijdragen aan het leveren van passende oplossingen voor het applicatielandschap. Hier ga je werken Deze organisatie, gevestigd in de regio van Amsterdam is een van de meest toonaangevende mediaorganisaties in Nederland. Door de organisatiecultuur krijg jij veel ruimte om initiatief te nemen en zelfstandig aan het werk te gaan. Samen met het IT team zorg

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

25/04/2024 20:08:30
 
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.