Mailinglisten-Archive |
Hallo! Ich stehe einem Problem gegenüber. Undzwar versuche ich derzeit einigermaßen ein für mich ausreichendes CMS zu programmieren. Meine Tabellen sollten dabei z.B. folgendes $text = ' bla bla\n #table#\n x | y\n 3 | \n #/table#\n bla bla\n'; durch: <tr> <td>x</td> <td>y</td> </tr><tr> <td>3</td> <td>4</td></tr> ersetzen. Da jedoch in $text auch vor oder nach der Tabelle sonstige Texte oder auch andere Tabellen in anderen Zusammenhängen vorkommen können, möchte ich irgendwie immer nur die Bereiche #table# bis #/table# durch Tabellen ersetzen und sonstige Texte vor oder nach den Tabellen sollen mitunter nicht irgendwo innerhalb der Tabelle erscheinen, was leider nicht klappt :( Hier mein aktueller Code, der soweit funktioniert, solange kein Fremdtext, oder eine weitere Tabelle in obiger Form untergebracht wird, da diese Elemente dann in eine extra Zeile innerhalb dieser Tabelle eingefügt werden ... <?php $string = preg_replace("/(.*)(\n){0,1}/i","|$1\n",$text); $string = preg_split("/[|]/",$string); $max = count($string); echo "<table>"; echo "<tr>\n"; for($i=1; $i<$max; $i++) { if(preg_match("/\n/i",$string[$i-1])) { echo "\n</tr><tr>\n"; } echo "\n<td>\n"; echo "\t".$string[$i]; echo "\n</td>\n"; } echo "</tr></table>"; ?> Würde mich über eure Hilfe freuen und bedanke mich schon im voraus. Grüße, Frat G.
php::bar PHP Wiki - Listenarchive