Toon posts:

[PHP] preg_replace en colorcoding

Pagina: 1
Acties:

Verwijderd

Topicstarter
Oke hier heb ik mijn MEGA probleem :'(

Ik heb een tekstje:

hoi

<?php echo "HOI"; ?>

en nog een keer

<?php echo "DOEI"; ?>


Nu wil ik die 2 php-codes eruit halen en colorcoden.

Dat colorcoden doe ik zo(persoonlijk denk ik dat dit de stomste manier is ooit maarja)
PHP:
1
<?$bericht = preg_replace("!<\?.*\?>!siUe", "SourceCode('$0')", $topic[bericht]);$bericht = nl2br(MakeLinks(htmlspecialchars($bericht)));for($codes = "1"; $codes <= count($coloredtxt); $codes++) {$bericht = str_replace("{" . $codes . "}", $coloredtxt[$codes], $bericht);}?>

en die PHP teksten eruit halen zo:
PHP:
1
<?function SourceCode($code) {global $coloredtxt, $aantalcodes;$aantalcodes++;ob_start();@highlight_string($code);$code = ob_get_contents();ob_end_clean();$code = eregi_replace("([^\n\r])((&amp;nbsp;){1})", "\\1 ", $code);$code = str_replace(" &amp;nbsp;", "&amp;nbsp; ", $code);$coloredtxt[$aantalcodes] = str_replace("  ", "&amp;nbsp; ", $code);return "{" . $aantalcodes . "}";}?>

Wat ik in feite doe is:

Ik maak van de PHP-code uit de tekst een gekleurde PHP-code.
Die sla ik op in een array ($coloredtxt[$codes]).
Vervolgens vervang ik alle getallen die de functie SourceCode teruggaf weer naar tekst.

Maar nu het probleem

hij maakt van:
echo "HOI"; => echo "HOI\";
en van
echo "DOEI"; => echo "DOEI\";

Waar zitten mijn fouten/hoe kan ik het beter doen?

Oh ja, ik snap hier niet echt veel van: http://www.php.net/manual/en/pcre.pattern.modifiers.php

Verwijderd

is dit niet gewoon wat je wilt?

Verwijderd

Topicstarter
nee, geloof het niet.
Ik zal wel even uitleggen wat ik bedoel.

Ik wil graag stukjes PHP-code uit de tekst halen, die highlighten (met highlight_string();) en die weer terug zetten.

kijk anders hier: http://hollandia.host.sk/forum.php?id=23

dan zie je wat ik bedoel

  • djc
  • Registratie: December 2001
  • Laatst online: 08-09-2025

djc

Ik zeg de /e modifier en highlight_string().

Rustacean


Verwijderd

Topicstarter
Op vrijdag 03 mei 2002 13:14 schreef Manuzhai het volgende:
Ik zeg de /e modifier en highlight_string().
wat bedoel je?

Verwijderd

Topicstarter
Te vroeg gejuicht:'(
Pagina: 1