DOM tree -> PHP object
Ik zit al een tijdje te zoeken op Google naar een functie die van een HTML DOM tree een PHP object kan maken. Je hebt wel een aantal standaardfuncties van PHP en XML, maar die werken nou niet echt goed...
Weet iemand daar een goed script voor?
DOM of simplexml? Als het goed is is de PHP DOM implementatie vrijwel gelijk aan die van Javascript, aangezien het DOM een W3C standaard is.
Met PHP's SAX parser zou je een eigen implementatie van DOM kunnen maken. Maar ik denk niet dat ik het echt aan kan raden, alle uitzonderingen implementeren lijkt mij vrij veel werk. En of het nu echt sneller o.i.d. is...
Wat is er dan mis met PHP Met PHP's SAX parser zou je een eigen implementatie van DOM kunnen maken. Maar ik denk niet dat ik het echt aan kan raden, alle uitzonderingen implementeren lijkt mij vrij veel werk. En of het nu echt sneller o.i.d. is...
Gewijzigd op 01/01/1970 01:00:00 door Jelmer -
http://zjapske.no-ip.org/domTree/simplexml.php
Dat maakt hij van de pagina:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html id="html" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Test</title>
<meta http-equiv="content-type" content="application/xhtml+xml;charset=utf-8" />
<meta http-equiv="content-style-type" content="text/css" />
</head>
<body>
<div>
<p class="testClass">Testpage</p>
<p><a href="#test">T</a>estpage #1</p>
<b>Testpage #2</b>
<a>Testpage #3</a>
<p id="someID">Testpage #4</p>
<div id="test">
<b>text</b>
</div>
</div>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html id="html" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head>
<title>Test</title>
<meta http-equiv="content-type" content="application/xhtml+xml;charset=utf-8" />
<meta http-equiv="content-style-type" content="text/css" />
</head>
<body>
<div>
<p class="testClass">Testpage</p>
<p><a href="#test">T</a>estpage #1</p>
<b>Testpage #2</b>
<a>Testpage #3</a>
<p id="someID">Testpage #4</p>
<div id="test">
<b>text</b>
</div>
</div>
</body>
</html>
SimpleXML laat de helft liggen lijkt het... Kijk maar naar de attributen van de p- en de a-tag, waar is de class van de p, waar de href van de a?
Verder vind ik het er niet erg mooi uit zien met SimpleXML.
Maar wat verwacht je precies? Met DOM kan je vrij gemakkelijk echt alle informatie uit een document halen, en het kan (incorrecte xml) html inlezen.