simplexml xpath read-only?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Senior Front end developer

Functie Wij zijn op zoek naar een ambitieuze, zelfsturende Front-end Expert die ons (internationale) team komt versterken. Onze huidige software development afdeling bestaat uit 7 developers en designers. Wij zijn een écht softwarehuis, dus ervaring in software development is wel echt een must. Er wordt tegelijkertijd aan meerdere projecten gewerkt, voor mooie toonaangevende klanten. Je hebt dus regelmatig te maken met deadlines en opleveringen. Een deel van onze omgeving is in Angular.JS. Dit deel wordt langzamerhand omgebouwd naar de nieuwste versie van Angular. Jouw werkzaamheden zullen bestaan uit: Het aansturen en begeleiden van jouw collega’s Het implementeren van visuele elementen

Bekijk vacature »

Front-end Developer

Do you want to work with the latest technologies on the development of new systems and applications? Create elegant interfaces using VueJS for thousands of users? Get moving and strengthen Nederlandse Loterij as a Front-end Developer. Thanks to your efforts, our services are always presented in style. As a Front-end Developer you are responsible for website development and improving customer experience based on data analyze. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Front-end Developer you score by: Writing elegant, testable components without side-effects to provide functionality to the users Website development, adding

Bekijk vacature »

Oracle Apex developer

Bedrijfsomschrijving My client is a technology company based in Den Bosch, the Netherlands. They specialize in providing innovative software solutions to clients, and they are currently looking for an experienced Oracle Apex developer to join the IT team. Functieomschrijving As an Oracle Apex developer, you will be responsible for designing, developing, and maintaining web-based applications using Oracle Apex. You will work closely with project managers, business analysts, and other developers to ensure that clients' needs are met and that the software solutions are of the highest quality. Responsibilities: Design, develop, and maintain Oracle Apex applications. Work with project managers and

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Gorinchem zijn wij op zoek naar versterking. Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met de back end werken! Bedrijfsprofiel Onze

Bekijk vacature »

UX Writer (m/v/d)

UX Writer (m/v/d) Everything we do, starts with you. Together with you, we build the most human-centric fintech. We have the ambition to create the next. And - with Bertelsmann - a strong foundation to start from. Let’s make it new – for society and for yourself. Wij zijn op zoek naar een UX Writer (m/v/d) Fulltime - Op ons kantoor in Amsterdam of Heerenveen / deels vanuit huis Als UX Writer bij Riverty hou jij je bezig met onze strategie om daar te zijn waar onze gebruikers zijn en op de manier waarop zij ons nodig hebben, terwijl wij

Bekijk vacature »

Lasrobot Programmeur

Over de functie Off-line programma’s maken die het beste resultaat bij de lasrobot mogelijk maken De programma’s met behulp van teach verder optimaliseren Proactief meedenken over oplossingen en over de juiste invulling van lasmallen Het lasrobotproces zoveel mogelijk optimaliseren Over het bedrijf Onze opdrachtgever is gespecialiseerd in de engineering, productie en assemblage van samengestelde plaatwerkproducten en monodelen uit metaal. Onze klant werkt samen met het team aan de mooiste producten van de toekomst. Binnen dit bedrijf staat een sterk team van specialisten op het gebied van industrial design, mechanical engineering, in-house prototyping en all-round projectmanagement. Met daarbij uiteenlopende kennis in

Bekijk vacature »

Embedded Software Developer Games

Functie omschrijving Heb jij affiniteit met hardware en wil jij kleuren binnen een Qt framework? Spreek jij de talen C en of C ++? Dan ben ik wellicht opzoek naar jou! Voor een super gave opdrachtgever in omgeving Delft is er namelijk plek voor een nieuwe kracht! Dit bedrijf is gespecialiseerd in het ontwerpen van software voor een unieke game industrie. Wil jij betrokken worden bij een proces dat loopt van ontwikkeling tot installatie? Waarbij je bezig zult zijn met perfecte systemen die geleverd worden aan binnen en buitenland? Je zult in een team, samen met vier ontwikkelaars, de mooiste

Bekijk vacature »

Medior Java developer (fullstack)

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 »

Python developer Consultancy

Functie Als Python developer bij deze organisatie werk je voor verschillende klanten. Doordat de oprichter een groot netwerk heeft kun je zelf voorkeuren uitspreken in het type projecten dat je wilt gaan doen. Zo zijn er bijvoorbeeld langdurige of juist korte projecten, maar is ook het type klant, of project bespreekbaar. Werk jij bijvoorbeeld graag aan een nieuw, state-of-the-art web portaal of ben je liever betrokken bij een migratietraject van een bestaande applicatie? Wij gaan voor jou aan de slag! Eisen • Je bent een gedreven developer met sterke voorkeur voor Python • Je bent meer dan een codeklopper •

Bekijk vacature »

Front-end developer - working on software for arou

Functie They have recently started looking for an experienced Front-end (mobile/app) developer. Because of the short lines within the team, they are also looking for someone who can communicate with the service desk, sales and support for technical questions. You will join their IT team consisting of about 10 colleagues divided over two teams in rooms opposite each other. Half of these are involved in their front-end. You will work together with, among others, the Architect, 1 senior, 1 junior and there is a Team Leader. In terms of technology, they work with a unique tech-stack, particularly because of the

Bekijk vacature »

Medior Java developer

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 »

PHP Developer gezocht!

Functie omschrijving Wij zijn op zoek naar een PHP Developer! Ben jij op zoek naar een nieuwe uitdaging? Lees dan snel verder! Voor een organisatie in de regio Utrecht die zich bezighoud met het verbeteren van de medicatieveiligheid zoeken wij een Software Developer. In deze functie zijn wij op zoek naar een slimme en enthousiaste Developer die interesse heeft in farmacie, logistiek en ICT. Daarnaast beschik je over een goed analytisch vermogen en ben je van nature gestructureerd en resultaatgericht. Je moet in deze functie daadkrachtig, flexibel en communicatief goed zijn. Je verantwoordelijkheden bestaan uit: Object georiënteerd programmeren; Werken in

Bekijk vacature »

.NET Developer

Functie omschrijving Ervaren .NET Developer gezocht! Wij zoeken een ervaren .NET developer die aan de slag gaat voor een softwarebedrijf in de regio Rhenen. In deze rol ben jij zowel zelfstandig als in teamverband verantwoordelijk voor het ontwikkelen en verbeteren van bestaande producten. Daarnaast houdt jij je bezig met de nieuwbouw van websites, webapplicaties en mobiele applicaties die zowel intern als extern gebruikt worden. Je werkt hierbij nauw samen met andere developer, productmanagers en product specialisten om mooie producten te creëren. Bedrijfsprofiel Waar kom je te werken? Je komt te werken voor snelgroeiende softwareleverancier en allround dienstverlener. Klanten van deze

Bekijk vacature »

Software Programmeur

Functie omschrijving Ben jij op zoek naar een organisatie waar je samen met een team werkt aan iets moois en waar je naast hard werken ook hard kunt lachen? Dan ben je hier aan het juiste adres! Voor een informeel IT-bedrijf in omgeving Wassenaar zijn wij op zoek naar versterking. Ben jij op zoek naar een nieuwe uitdaging als Software Programmeur lees dan snel verder! Werkzaamheden Programmeur Je bent bezig met het ontwikkelen van software en webapplicaties. Je kunt technische klussen uitvoeren op locatie. Je onderhoudt contact met de projectleider om er zeker van te zijn dat een project goed

Bekijk vacature »

Front end developer

Functie Qua type opdrachten is er echt een verscheidenheid aan afnemers, zo werken ze met grote multinationals, maar ook met startups. Zo kom je te werken in een gevarieerde omgeving en kan je ook schakelen tussen verschillende culturen. De projecten variëren van greenfield projecten tot langdurige ontwikkeltrajecten. Hier wordt alleen maar gewerkt met aan front end projecten. Daarom maakt het onze partner niet uit waar jij kennis van hebt, als je maar gedegen kennis hebt van Javascript frameworks, Unit testing en ook bekend bent met de scrum methodiek. Eisen Minimaal 4 jaar relevante werkervaring Kennen en ervaring van Javascript frameworks

Bekijk vacature »
Pepijn de vos

pepijn de vos

02/12/2008 18:49:00
Quote Anchor link
hoi,

dit is het verhaal: ik ben en plugin aan het maken voor whatever met een config dingetje in een xml bestand.
nu ben ik bezig daar een admin pagina voor te maken, bij he terug schrijven gebruik ik $item = $idealxml->xpath($path); om vervolgens de juiste waarde in $item te stoppen.

mijn erste gedachte was dat al dat simple xml spul by refference gaat, dus dat ik zo in item kan schrijven... blijkbaar niet, of ik doe iets fout.
en als ik iets probeer als $idealxml->xpath($path) = $value; krijg ik een error met PHP "Can’t use method return value in write context"

dit is ene klein stukje code:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
<?php
foreach($_POST as $id => $value) {
    $item = explode('#', $id);
    $item[0] = explode('_', $item[0]);
    $path = '//'.$item[0][0].'['.(isset($item[1]) ? $item[1] : 1).']/'.$item[0][1];
    $item = $xml->xpath($path);
    $item = $value;
}

echo "<pre>";
echo htmlentities($xml->asXML()); // dit is dus de oude xml, zonder de veranderingen hierboven
echo "</pre>";
?>


in post zitten dingen in de vorm van item_name#3 die dus corresponderen met bijvoorbeeld dit element:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<xml>
    <item><name>deze niet...</name></item>
    <item><name>deze niet...</name></item>
    <item><name>deze wel, omdat dit nummer 3 is... xpath schijnt niet zero based te zijn</name></item>
    <item><name>deze niet...</name></item>
</xml>
Gewijzigd op 01/01/1970 01:00:00 door Pepijn de vos
 
PHP hulp

PHP hulp

17/05/2024 00:06:54
 
Pepijn de vos

pepijn de vos

03/12/2008 19:23:00
Quote Anchor link
bump...

ik zit hier met een admin die niks doet :S
heeft verder geen super haast ofzo, ik kan nu gewoon in de xml rommelen, maar niet elke noob snapt dat ;)

de vraag samengevat is dus:
hoe kan ik een node uit een xml bestand halen door middel van xpath en vervolgens de waarde aanpassen en terug schrijven naar het xml bestand.
 
Pepijn de vos

pepijn de vos

10/12/2008 20:06:00
Quote Anchor link
mag ik al wanhopig worden?
't duurt me nu een beetje lang.

werkt hier niemand met xml dat ik geen antwoord krijg, of wat is het probleem?
verkeerde topic titel?
slechte uitleg?
of weet niemand het antwoord?

als ik zo iets doe als dit: $xml->a->b = "iets" werkt dat gewoon.
als ik $temp = $xml->a->b doe, en vervolgens $temp = "iets" dan werkt dat wel als de referentie van $xml er in zit, maar niet als het de waarde is.

ik weet dat ik niet naar een return value kan schrijven, en ik weet ook vrij zeker dat het bij simplexml om een referentie naar het xml object gaat, daarom moet je ook altijd die dingen als string casten.
maar als ik dus de return value in een var stop en daar naar schrijf, waarom is het resultaat dan niet bijgewerkt?
of moet ik nog iets doen met =& om echt de referentie te bewerken?

Edit:

http://nl2.php.net/manual/en/function.simplexml-element-xpath.php#56120
zie je wel, referenties... wat doe ik nou fout?
Gewijzigd op 01/01/1970 01:00:00 door pepijn de vos
 
M Ypma

M Ypma

10/12/2008 20:14:00
Quote Anchor link
Quote:
als ik $temp = $xml->a->b doe, en vervolgens $temp = "iets" dan werkt dat wel als de referentie van $xml er in zit, maar niet als het de waarde is.

Kan je daar een werkend voorbeeld van geven? Dit mag ook niet werken, ookal zit er een instantie vam simplexml in, hij zal die instantie gewoon weggooien en vervangen door je string die je nu aan de variabele toewijst.
Tevens snap ik je probleem niet. Waarom wil je het eerst in een losse variabele zetten en vervolgens de waarde aanpassen? Dat is toch erg onoverzichtelijk en lelijk?
Ik kan me je probleem niet voorstellen. Ik gebruik het ook af en toe, simplexml is slecht gedocumenteerd, maar heb er nooit problemen mee.
Gewijzigd op 01/01/1970 01:00:00 door M Ypma
 
Arian Stolwijk

Arian Stolwijk

10/12/2008 22:34:00
Quote Anchor link
Ja... eerst maak je een variable aan, ...->xpath() geeft trouwens een array met nodes terug... daarna ga je in die variabele iets anders zetten.

Je moet juist op zoek gaan naar een property van een van de nodes die in de array zit, die je terug kreeg van ...->xpath(), waarmee je de waarde van die node aan kunt passen.

Iets als

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php

$item
= $xml->xpath($path);
$item[0]->textContent = 'iets';

?>


de property textContent verzin ik nu even, omdat dat een property is van DomNode, maar zoiets moet het zijn. Een tijdje terug heb ik hier naar gezocht voor een simpleXMLELement, maar kon het niet vinden...

Wat je kunt doen is het simpleXMLElement omzetten naar een DomElement(/Node/Document (weet niet precies)) en het zo aanpassen en dan weer terug. Maar dat is natuurlijk heel omslachtig...
 
Pepijn de vos

pepijn de vos

13/12/2008 13:58:00
Quote Anchor link
ik heb het al, als je $item[0][0] doet werkt het!!! die laatste is dus voor de textcontent.

het heeft even geduurd, maar bedankt voor de info.
nu kan ik weer verder...
 



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.