xml into object

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Back end developer Digital Agency

Functie Wij zijn van origine een wordpress bureau, maar sinds 2006 zijn wij dit wel redelijk ontgroeid. Naar mate de jaren verstreken zijn we gegroeid in omvang, maar ook in de complexiteit van opdrachten waarin wij onze klanten kunnen bedienen. Momenteel bestaat onze organisatie uit 4 front end developers, 12 back end developer 3 projectmanagers en een 2 koppig management. Wij zijn een hele informele, bijna familiaire organisatie. Geen strak pak of overhemd, nee gewoon dragen waar jij je prettig bij voelt. De gemiddelde leeftijd ligt tussen de 25 en 30 en wij doen er veel aan om onze hechte

Bekijk vacature »

.NET Developer

Dit ga je doen Tot jouw takenpakket behoort onder andere: Webapplicaties ontwerpen, bouwen, testen en implementeren in .NET/C#.; Ontwikkelen, implementeren en beheren van maatwerkapplicaties; Onderhouden en beheren van standaardpakketten; Onderzoeken en beoordelen van nieuwe technieken. Hier ga je werken Als .NET ontwikkelaar kom je te werken bij een grote semioverheidsinstelling in Nijmegen. De organisatie staat garant voor het leveren van onderwijs en les- en onderzoeksmateriaal voor duizenden betrokkenen. De organisatie wil bijdragen aan een gezonde, vrije wereld met gelijke kansen voor iedereen. Binnen de teams hangt een open en collegiale cultuur met veel aandacht voor een prettige en sociale werksfeer.

Bekijk vacature »

Applicatie Ontwikkelaar

Bedrijfsomschrijving DUO verzorgt als uitvoeringsorganisatie, zijnde onderdeel van het Ministerie van Onderwijs, Cultuur en Wetenschap de uitvoering van complexe wet- en regelgeving en heeft een uitgebreid dienstenpakket. DUO financiert en informeert onderwijsdeelnemers en onderwijsinstellingen. Voor verdere informatie zie www.duo.nl Functieomschrijving Wie zoeken we? Jij bent een enthousiaste, flexibele OPS’er die het leuk vindt om het bestaande examenlandschap te vernieuwen. Je bent leergierig en hebt interesse in cloud- en containertechnieken zoals OpenShift, Docker en Helm. Je gaat een uitdaging niet uit de weg en wil je nieuw opgedane kennis graag delen met de collega’s binnen en buiten het team. Doordat de

Bekijk vacature »

(Lead) PHP Software Developer

Functie omschrijving Voor een klein softwarebedrijf in Breda, zijn wij op zoek naar een PHP software developer met een aantal jaar werkervaring. Je krijgt een plek in een klein team met 2 andere software developers. Wil jij graag werken met de nieuwste technieken bij een bedrijf waar jij de lead gaat nemen in de verder ontwikkeling en modernisering van een eigen software pakket? Dan ben je hier aan het juiste adres! Jouw werkzaamheden gaan er als volgt uit zien: Je gaat aan de slag met de ontwikkeling en vernieuwing van het "in-house" ontwikkelde multimedia platform. Je neemt de lead in

Bekijk vacature »

Laravel Developer

Functie omschrijving Voor een gave organisatie in de buurt van Den Bosch zoek ik een PHP developer. Het is van belang dat je kennis/ervaring hebt met het framework Laravel. Jij gaat in deze functie software applicaties ontwikkelen. Deze software projecten zijn heel divers, en deze organisatie maakt software, van A tot Z. Klanten kunnen in elke sector werkzaam zijn, van profit tot non-profit. Andere taken zijn onder andere: documentatie schrijven over applicaties/uitleg geven over software en applicaties/ klantcontact over bestaande applicaties/applicaties optimaliseren. Bedrijfsprofiel Deze organisatie zit in de regio van Den Bosch en is een klein bedrijf. Er werken circa

Bekijk vacature »

Software Developer

Dit ga je doen Ontwikkelen aan de software dat beschikbaar is op de substations; Ontwikkelen in C++, C, Python en JavaScript. Daarnaast op een Embedded Linux omgeving, opgebouwd met containers en DevOps; Meewerken aan cyber security (OWASP); Uitvoeren/bouwen van geautomatiseerde testen in samenwerking met de Quality Specialist; Vertalen van wensen van de klanten/business naar werkbare/duurzame oplossingen. Hier ga je werken Als Software Ontwikkelaar kom je te werken bij een organisatie gericht op de (internationale) energiemarkt, waar wordt gewerkt voor het verwerven en verwerken van realtime, high quality data. Er wordt gewerkt vanuit het hart van de substations en direct voor

Bekijk vacature »

Ervaren Full stack developer

Functie omschrijving Ben jij op zoek naar een uitdagende in-house functie bij een bedrijf met enorme groeipotentie? Ben jij op zoek naar een nieuwe uitdaging vol afwisseling en gezelligheid? Dan ben je bij dit bedrijf aan het juiste adres! Wij zijn in omgeving Breda op zoek naar een ervaren full stack developer. Je gaat werken voor een zeer gewilde werkgever met goede arbeidsvoorwaarden. Je krijgt een plekje in het jonge IT team, work hard, play hard is hier duidelijk het motto! Jouw werkzaamheden zien er als volgt uit: Jij bent verantwoordelijk voor het ontwerpen en bouwen van webapplicaties. Je bent

Bekijk vacature »

Back-end Programmeur

Functieomschrijving Heb jij kort geleden je HBO ICT in ontvangst mogen nemen? Of ben je toe aan een nieuwe uitdaging? Voor een ambitieuze werkgever in de regio van Breda zijn wij op zoek naar een Back-end programmeur met affiniteit met C#.NET, SQL en MS Access. Samen met team bestaand uit ware ICT professionals ben je verantwoordelijk voor het bouwen van maatwerk software voor hun klanten. Belangrijk is dat je kennis of ervaring hebt van C#.NET en SQL. Je toont een flexibele en sociale houding naar klanten toe. Je denkt in nieuwe mogelijkheden & gaat graag de uitdaging aan. Bedrijfsprofiel De

Bekijk vacature »

Fasttrack learning & development voor Java dev

Wat je gaat doen: Wij zoeken enthousiaste en ambitieuze junior en medior ontwikkelaars die toe zijn aan de volgende stap in hun carrière. Wij helpen je op je pad naar senior ontwikkelaar door ons fasttrack learning en development programma. Na een kort en intensief programma ga jij aan de slag bij klanten van DPA. Daarnaast krijg je veel ruimte om je te ontwikkelen als persoon en als specialist. De eerste maand gaan we aan de slag om je certificeringen te behalen waaronder OCP (Oracle Certified Professional). Daarnaast nemen we een deepdive in Spring Boot. Ook laten we je kennismaken met

Bekijk vacature »

Software developer

Werkzaamheden voor jou als software developer Voor een goede relatie in de regio Zwolle (meerdere locaties) zoeken wij een software developer die betrokken is bij de ontwikkelcyclus en verantwoordelijk is voor het testen en keuren van nieuwe en geoptimaliseerde software. In deze functie ben je in de implementatiefase de persoon die risico's beoordeelt en intern oplossingen aanbrengt om risico's te verkleinen. Binnen het ontwikkelteam van de software ben je een belangrijke schakel waar je intensief meewerkt met scrum. Het voorkomen van bugs in de programma's en het bevorderen van gebruiksvriendelijkheid voor eindklanten zijn voor jou een uitdaging en geeft voldoening

Bekijk vacature »

Fullstack Developer

Functieomschrijving Voor een erkende werkgever in regio Etten-Leur zijn wij op zoek naar een Fullstack Developer met PHP/Laravel ervaring. Je gaat aan de slag met het bouwen van maatwerk software voor klanten die actief zijn in een specifieke markt. Als fullstack developer ben je samen met een enthousiast team van 7 collega’s verantwoordelijk voor de ontwikkeling, beheer en innovatie van informatiesystemen voor klanten in een specifieke branche. Verder ondersteun je complexe uitdagingen van klanten. Je brengt hun wensen in kaart en vertaalt deze door naar maatwerk software. Ervaring met Laravel is een must. Om de klant zo goed mogelijk te

Bekijk vacature »

Software Ontwikkelaar

Functie omschrijving Voor een echt familiebedrijf in de omgeving van 's-Hertogenbosch ben ik op zoek naar een Software Developer. Jij gaat in de functie van Software Developer werken met C# en .NET framework Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Deze organisatie is

Bekijk vacature »

C#.NET Developer Jr. Functie

Functie omschrijving Bouw jij graag aan applicaties om processen in distributiecentra te optimaliseren? Wij zijn op zoek naar een C#.NET ontwikkelaar in regio Breda die hier graag een steentje aan bijdraagt! Jouw werkzaamheden zullen er als volgt uitzien: Je krijgt veel vrijheid in de keuze van de technieken die je gaat gebruiken. Uiteraard wel binnen de gestelde kaders, en door gebruik te maken van het .NET platform. Je gaat aan de slag met de ontwikkeling van een nieuwe module binnen de WMS suite van dit bedrijf. Deze "carrier" module gaat er voor zorgen dat de selectie van een vervoerder volledig

Bekijk vacature »

NodeJS developer

Functie Als Fullstack developer kom je te werken in het ontwikkelteam. Je bent samen met je collega’s continu bezig om de software uit te breiden, maar hiernaast doe je onderzoek naar de inzet van nieuwe technieken, tools of bijvoorbeeld Machine Learning. Ze willen met hun software echt voorlopen op andere en toegevoegde waarde leveren voor de eindgebruiker. Mede hierom zijn ze erg benieuwd naar iemand zijn persoonlijkheid, of hij graag nieuwe dingen uitzoekt (Google!), en initiatief neemt. Qua technische kennis zoeken ze iemand die goed op de hoogte is van de nieuwste ontwikkelingen, daar zij nu ontwikkelen op NodeJs back-end,

Bekijk vacature »

Software Ontwikkelaar

Functieomschrijving In deze uitdagende functie als Software Developer ga je de volgende taken uitvoeren: Maatwerk back-end software programmeren; API koppelingen bouwen; Software optimaliseren voor klanten; Bouwen maatwerk applicaties; Werken met Microsoft stack zoals C#, .NET (Core) en Entity framework; Bedrijfsprofiel Je gaat werken bij een klein softwareontwikkelingsbureau, die maatwerk software bouwt voor klanten door heel Nederland. Dit doen zij al meer dan 20 jaar. Het is van oorsprong een familiebedrijf, opgezet door de eigenaar, die er nog steeds werkt. Het team bestaat vooral uit back-end developers en één systeembeheerder. Je krijgt veel kans om jezelf te ontwikkelen en krijgt tevens

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 11:05:43
 
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.