blob: 6e5e835fb128573f13058b01e295504dc758a8a6 (
plain)
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
|
<?php
$text = 'gfgdfgdfgdsggggggggggggg
dfgdsfgdh
dh
gh
g
hg
fhhhhhhhhhhhhhhhhhhgfghfghfgh
fhfgfgdfgdfgdsggggggggggggg
dfgdsfgdh
dh
gh
g
hg
fhhhhhhhhhhhhhhhhhhgfghfghfgh
fhf<h3 id="titre2laguerre">tiTre2:laguerre</h3> dqs fdddddddfdfdsfs fdsfdksdfjnsdjkhsf lkfljkfhjldshsf fsdf
fdgfgdfgdfgdsggggggggggggg
dfgdsfgdh
dh
gh
g
hg
fhhhhhhhhhhhhhhhhhhgfghfghfgh
<p>
fhfgfgdfgdfgdsggggggggggggg
dfgdsfgdh</p>
dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>
gh<p>
g
hg</p>
fhhhhhhhhhhhhhhhhhhgfghfghfgh
gh
g
hg
fhhhhhhhhhhhhhhhhhhgfghfghfgh
<p>
fhfgfgdfgdfgdsggggggggggggg
dfgdsfgdh</p>
dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>
gh<p>
g
hg</p>
fhhhhhhhhhhhhhhhhhhgfghfghfgh
gh
<h1 id="yolo">YOLO</h1>
<h2 id="ptout">PROUT</h2>
<h2 id="lol">LOLDELAMORT</h2>
hg
fhhhhhhhhhhhhhhhhhhgfghfghfgh
<p>
fhfgfgdfgdfgdsggggggggggggg
dfgdsfgdh</p>
dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>dh</br>
gh<p>
g
hg</p>
fhhhhhhhhhhhhhhhhhhgfghfghfgh
fhf
g
hffffgggggggggggggggggggggggggggggggggggggdsf <h3>titre 3- les hommes </h3> la fin';
function sumparser($text)
{
preg_match_all('#<h([1-6]) id="(\w+)">(.+)</h[1-6]>#iU', $text, $out);
var_dump($out);
$sum = [];
foreach ($out[2] as $key => $value) {
$sum[$value][$out[1][$key]] = $out[3][$key];
}
var_dump($sum);
$sumstring = '';
$last = 0;
foreach ($sum as $title => $list) {
foreach ($list as $h => $link) {
if($h > $last) {
for ($i = 1; $i <= ($h - $last); $i++) {
$sumstring .= '<ul>';
}
$sumstring .= '<li><a href="#'.$title.'">'.$link.'</a></li>' ;
} elseif ($h < $last) {
for ($i = 1; $i <= ($last - $h); $i++) {
$sumstring .= '</ul>';
}
$sumstring .= '<li><a href="#'.$title.'">'.$link.'</a></li>' ;
} elseif ($h = $last) {
$sumstring .= '<li><a href="#'.$title.'">'.$link.'</a></li>' ;
}
$last = $h;
}
}
for ($i = 1; $i <= ($last); $i++) {
$sumstring .= '</ul>';
}
return $sumstring;
}
echo $sumstring;
echo $text.'</br>';
|