|
#1
|
|||
|
|||
|
könnt ihr mir helfen? Hier der Code: PHP Quellcode:
|
|
#2
|
|||
|
|||
|
wie kommst du denn darauf, dass reg_replace irgendetwas anderes tun sollte, als vor den gematchten text hightlight_string( zu schreiben?
wenn du schon möchtest, dass etwas evaluiert wird, dann musst du auch den passenden modifier setzen, in diesem falle also das "e": http://de.php.net/preg_replace (beispiel 4)
__________________
"Es gab eine Zeit, als Zeitungen sagten, nur zwölf Menschen verständen die Relativitätstheorie. Ich glaube nicht, dass es jemals eine solche Zeit gab. Auf der anderen Seite denke ich, es ist sicher zu sagen, niemand versteht Quantenmechanik." - R. Feynman |
|
#3
|
|||
|
|||
|
sorry, aber verstehe es immer noch nicht.. müsste der Code dann so lauten?
PHP Quellcode:
|
|
#4
|
|||
|
|||
|
Autsch!
|
|
#5
|
|||
|
|||
|
Also, ich möchte mal Bedenken äußern:
preg_replace mit dem modifier e birgt Gefahren!! Eingesetzt in einem Forum oä. können Besucher eigenen Code zur Ausführung bringen! Alternativ: http://qbnz.com/highlighter/ Hat auch den Vorteil, daß es einen ganzen Berg von Sprachen abdeckt.. http://www.christian-seiler.de/proje...ode/index.html Hier wird ua. bschrieben, warum reguläre Ausdrüche nicht unbedingt das Optimum für BBCode interpreter sind...
__________________
Bitte immer nur im Schritttempo denken. Wer in die falsche Richtung läuft, braucht sich nicht zu beeilen... |
|
#6
|
|||
|
|||
|
1. das muster ist falsch
nicht gut, aber auf der richtigen fährte: PHP Quellcode:
$pattern = "!\[php\](.*)\[/php\]!ismUe";
auch nicht toll, aber klappt im rahmen der möglichkeiten PHP Quellcode:
"highlight_string('<?php \\1 ?>')"
weil die funktion keinen rückgabewert hat, sondern den übergebenen string direkt ausgibt. d.h., erst wird der formatierte text angezeigt, und erst dann der bearbeitete text. schau es dir am besten an einem beispiel an PHP Quellcode:
<?php
$text = ' bla fasel [php]echo "Hallo Welt!"; $antwort = 42; ?> '; echo preg_replace("!\[php\](.*)\[/php\]!ismUe","highlight_string('<?php \\1 ?>')", $text); [/php] du solltest besser preg_replace_callback verwenden und dir dort eine möglichkeit überlegen, den text zu highlighten (dazu gibt es irgendwo schon eine fertige klasse => google).
__________________
"Es gab eine Zeit, als Zeitungen sagten, nur zwölf Menschen verständen die Relativitätstheorie. Ich glaube nicht, dass es jemals eine solche Zeit gab. Auf der anderen Seite denke ich, es ist sicher zu sagen, niemand versteht Quantenmechanik." - R. Feynman |
|
#7
|
|||
|
|||
|
__________________
>>> simsIt.de - Jeden Tag 5000 kostenlose SMS für ALLE! Kein Abo, keine Kosten, keine Abzocke! Keine Hilfe bei PHP-Problemen per PN, eMail, ICQ oder Telefon... Dass meine ICQ-Nummer in meinem Profil steht heisst nicht dass Ich mir jedermanns PHP-Problem ansehe
|
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|
|
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| pdt - syntax highlight problemhaft | kb | Editoren & Entwicklungsumgebungen | 2 | 30.05.2007 16:43 |
| PHP Highlight Scripta | EaStErDoM | Skriptsuche | 9 | 21.08.2006 15:45 |
| highlight-funktion | Fabian90 | PHP | 3 | 15.02.2006 06:40 |
| Highlight Frage ;) | Martin-Koschi | HTML | 4 | 22.01.2005 23:50 |
| gdlib highlight funktion? | captain | PHP | 2 | 21.10.2004 15:14 |