Lägga till noder i XML med PHP?

Tråden skapades och har fått 7 svar. Det senaste inlägget skrevs .
1
  • Medlem
  • Göteborg
  • 2004-04-13 12:14

Jag har hittat en lösning med ASP och XML, men inte för PHP. Är det någon som kombinerat dessa två någon gång? Jag vill göra en typ gästbok eller nyhetslogg a la Macfeber, där jag enbart behöver fylla i formulär på en sida och den informationen sparas i ett xml-dokument som läses in med x-schema. Jag är rookie på alla fronter, men lär mig snabbt! Någon som kan rekommendera en läsvärd sida med bra exempel?

Är ditt nuvarende system SAX eller DOM baserad? DOM har väl egentligen bäst funktioner för att lägga till noder, vad jag har förstått det.

Själv tycker jag att php's olika xml implementationer är ganska sunkiga, däremot ser ser php5's simplexml (mf.) funktioner riktigt trevliga ut, så jag väntar nog tills femman har gått stable med att börja använda xml till något vettigt för de system jag gör..

Lite OT, men själv brukar jag använda mig av YAML i stället för XML för den sortens lösningar. Åtminstone för mig blir det betydligt mindre bök då, eftersom yaml är så pass avskalat.

http://www.whytheluckystiff.net/syck/

  • Medlem
  • Göteborg
  • 2004-04-13 16:17

Vet inte vad SAX eller DOM är tyvärr, men jag har ändå inget system just nu ändå. Jag skall skriva ett nytt och letar därför efter den bästa lösningen. Jag skulle kunna (och har gjort förr) ha en mysql-db med php, men jag vill prova något nytt. Dessutom orkar jag väl inte riktigt kontruera en db, även om detta i längden skulle vara mer flexibelt gällande utökning osv. Jag blir bara förvånad över den stora hypen med xml, när det finns så dålig dokumentation om att lagra nytt material i en xml-fil, det mesta cirkulerar kring presentationen verkar det som.

Samuel K: Tack för tipset, skall kolla upp genast!

  • Medlem
  • Göteborg
  • 2004-04-13 17:27

Jag förstår inte riktigt hur man installerar eller använder YAML, jag har redan ett webhotell jag skall lägga upp allt på, så då går det ju inte att installera nya moduler. Kanske du kan ge en lite utförligare beskrivning på dess innebörd?

Ursprungligen av speedy:

Jag förstår inte riktigt hur man installerar eller använder YAML, jag har redan ett webhotell jag skall lägga upp allt på, så då går det ju inte att installera nya moduler. Kanske du kan ge en lite utförligare beskrivning på dess innebörd?

Aha, jo det ingår ju inga yaml-bibliotek i standarddistributionen av php (än), så det blir ju lite svårare om man lägger upp på webbhotell som inte är pigga på att installera nya moduler.

YAML, som står för "YAML Ain't Markup Language", är kort och gott ett språk för att lagra data. Syftet med yaml är att det ska vara ett effektivt språk som dessutom är lätt för människor att läsa. Tanken är att YAML ska användas för lagring av listor, tabeller och andra former av data där det är slöseri att använda XML. Själv använder jag det till allt möjligt; allt från konfigurationsfiler till "mellanformat" för distribuerade system.

Ett av problemen med XML är ju just att det är ett markupspråk. Det innebär att det blir en massa start- och sluttaggar som gör xml-dokumenten svårlästa för både människor och datorer, eller som någon så träffande uttryckte det: "The overhead of plain text files combined with the readability of binary files". Därför är yaml inte konstruerat som ett markupspråk, och det är heller inte tänkt att användas som ett sådant. Syntaxen är väldigt enkel och så "naturlig" att de flesta programmerare redan använt den utan att veta om det. En trevlig bonus är att yaml därför går väldigt snabbt att parsa.

Ett enkelt exempel (någon sorts shoppinglista):

---
Datum: 2004-04-13
Butik: Konsumbutiken runt hörnet
Varor:
 - Mjölk
 - Ägg
 - Bröd
 - Tomater

Man lär sig lätt alla funktioner man behöver känna till i språket på ett par minuter. En bra femminutersgenomgång finns här:

http://yaml.freepan.org/index.cgi?YamlInFiveMinutes

OT:

coolt!

känns väldigt enkelt, och väldigt python på något sätt.

  • Medlem
  • Göteborg
  • 2004-04-14 01:55

Tog mig exakt 5 minuter att läsa igenom och glo på lite, verkar vara ett mycket trevligt sätt att organisera data på! Synd bara att mitt webhotell inte har det installerat.. Så, ingen som har några php/xml-exempel att dela med sig?

1
Bevaka tråden