Hi 2 All,
ik ben al een tijdje aan het spelen met preg_(match|replace), maar ik kom er niet echt uit. d'r zijn al aardig wat topics over geweest, maar ik kom er niet echt wijs uit, vandaar dat ik probleempje maar ff post
.
het probleem(voor mij dan
) :
ik heb een $tpl waarin in HTML code staat met tags erin (d0h)
met uiteraard als al eerder is gezien [tmp]. nou wil ik die tags met [tmp] en [/tmp] eruit halen.
nou lukt DAT nog wel, maar hoe krijg ik dat goed voor elkaar als ze gestackt zijn??, dus [temp] blaat [temp] blaat blaat [/temp] blaterdeblaaterblaat [/temp].
en dan nog iets:
binnen die tags wil ik meer dan 1x een waarde door kunnen geven in de vorm van amount="waarde". 1x lukt me nog wel, maar vaker niet.
Mijn code:
wat de volgende waarde voor $backRef retour geeft:
alle raad welkom, oplossingen ook (en nederlandse tutorials ook
)
ik ben al een tijdje aan het spelen met preg_(match|replace), maar ik kom er niet echt uit. d'r zijn al aardig wat topics over geweest, maar ik kom er niet echt wijs uit, vandaar dat ik probleempje maar ff post
het probleem(voor mij dan
ik heb een $tpl waarin in HTML code staat met tags erin (d0h)
met uiteraard als al eerder is gezien [tmp]. nou wil ik die tags met [tmp] en [/tmp] eruit halen.
nou lukt DAT nog wel, maar hoe krijg ik dat goed voor elkaar als ze gestackt zijn??, dus [temp] blaat [temp] blaat blaat [/temp] blaterdeblaaterblaat [/temp].
en dan nog iets:
binnen die tags wil ik meer dan 1x een waarde door kunnen geven in de vorm van amount="waarde". 1x lukt me nog wel, maar vaker niet.
Mijn code:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| $tplFile = ' <table width="100%" border="1"> <tr> <td>Hi<td> </tr> [loop amount="3"] <tr> <td> [loop name="board"] Hi [/loop] </td> </tr> [/loop] [loop name="board"] <tr> <td>Hi</td> </tr> [/loop] </table> '; $match = '!\[loop (amount|name)="(.*?)"\](.*?)\\[/loop\]!ism'; preg_match_all($match, $tplFile, $backRef); |
wat de volgende waarde voor $backRef retour geeft:
PHP:
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
| Array ( [0] => Array ( [0] => [loop amount="3"] [loop name="board"] Hi [/loop] [1] => [loop name="board"] Hi [/loop] ) [1] => Array ( [0] => amount [1] => name ) [2] => Array ( [0] => 3 [1] => board ) [3] => Array ( [0] => [loop name="board"] Hi [1] => Hi ) ) |
alle raad welkom, oplossingen ook (en nederlandse tutorials ook
[ Voor 31% gewijzigd door Verwijderd op 18-12-2002 18:55 ]