php code farbig machen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
angezeigt bekommen
art
bild
code
einsetzen
ersetzen
funktion
gemacht code
header
letzten post
oberen teil
schau
schwarzen hintergrund
setzen
stehen
string
suchen
tag
teil
verschwinden
-
tag,
also ich wollte eine funktion schreiben die phpcodes (so wie z.b. hier bei lima) den code farbig gestaltet.
tja nur irgendwie geht das nicht der teil n zu <br> geht (wenn ich den oberen teil weg lasse.
der fehler ist irgendwo bei preg_replace();
hier mein code:
<?php function phpcode($phpcode) { $phpcode = preg_replace(" ///(.*?)","<span color= "red ">\{1}</span>",$phpcode); $phpcode = ereg_replace("n","<br>",$phpcode); return $phpcode; } ?>
hoffe ihr könnt mir helfen mfg andré
Beitrag geändert: 5.11.2008 16:37:36 von andre-morillon -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Highlighten heißt das glaub ich ^^
Nimm doch einfach dieses Script:
<?php $str = "<?php echo \"Ein String\" ?>"; highlight_string($str); ?>
Was in "str" steht kannst du dann durch deine Scripte ersetzen.
-
das problem ist jetzt das er $str einfach in schwarz vorne dran stellt und nichts weiter tut. und nicht nach dem kommentar sucht und diesen farbig zu makieren
und php.net war hinsichtlich der funktion auch nicht sehr ergiebig
Beitrag geändert: 5.11.2008 16:47:47 von andre-morillon -
naja ich hab das so gemacht wie du vorgeschlagen hast mit highlight_string(); das einzige was gehiglightet wird ist <?php der rest wrid in schwarz (ich hab einen schwarzen hintergrund) einfach hingeschriegen egal ob es im code vorkommt oder nicht.
<?php function phpcode($phpcode) { highlight_string("<?php");//wird gehiglighter highlight_string("//");//wird einfach in schwarz eingefügt highlight_string("include_once");//wird einfach in schwarz eingefügt highlight_string("?>");//wird einfach in schwarz eingefügt $phpcode = ereg_replace("\n","<br>",$phpcode); return $phpcode; } ?>
-
<?php $str = "<?php // include_once ?>"; highlight_string($str); ?>
Willst du das so?
Ich versteh nicht was du meinst.
Dein PHP-Skript, welches du gehighlighted haben möchtest, muss bei $str = "HIEER!!!!!!!!!";
stehen
EDIT: Die Backslashes verschwinden immer :(
Du musst da natürlich aufpassen dass wenn du die "" angezeigt bekommen möchtest, die Backslashes nicht vergisst.
Beitrag geändert: 5.11.2008 17:01:45 von eragon95 -
Du musst den kompletten String in <? und ?> setzen, highlight_string kann das ja nicht für dich übernehmen. Also solltes du eher was in der Art
<? $str='<?'.$your_str.'?>'; highlight_string($str); ?>
machen
edit
zu langsam
Beitrag geändert: 5.11.2008 17:00:19 von tct -
$str='<?'.$your_str.'?>';
highlight_string($str);
?>
so hab ichs aber es sieht so aus
http://andre-morillon.lima-city.de/bilder/screen008.jpg
und das ist nicht sinn der sache -
Was ist daran denn falsch, außerdem erkennt man auf dem Bild fast nichts.
EDIT:
Kopier dir mal:
<?php $str = "<?php echo |"Ein String|" ?>"; highlight_string($str); ?>
Die | vor den " musst du durch Backslashes ersetzen \ .
Dann kopier dir das mal und schau, wie es dann angezeigt wird.
Das kannst du dann halt ändern.
Beitrag geändert: 5.11.2008 17:11:13 von eragon95 -
Dann solltest du dich vll nochnal deutlicher ausdrücken, was du brauchst, denn die Funktion tut da, was sie soll: Strings farbig machen.
Wenn du sie in einer anderen Funktion einsetzen willst (also so wie du es oben geschrieben hast), musst du die Ausgabe entsprechend puffern indem du highlight_string($str,1); benutzt. -
am dem bild ? schau mal neben der schwaren box da ist nochmal der ganze text und ich hab das gleiche nochmal in "scharf" hochgeladen.
-
Da seh ich etwas JavaScript und HTML.
Das ist doch von dem PopUP-Teil.
Was soll jetzt damit sein?
Könntest du mal n bisschen Quelltext posten.
-
ich hab nochmal was gemacht
<? include_once('styles/tpl/header.php'); $content="<? ".$row->content."?>"; $content = preg_replace ("/\[code\](.*?)\[\/code\]/si", highlight_string("\\1"), $content); echo nl2br($content); include_once('styles/tpl/footer.php'); ?>
tut sich aber gar nichts mehr wrid alles normal dargestellt aber der zu higlightende teil nicht mehr -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage