kostenloser Webspace werbefrei: lima-city


php code farbig machen

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    a************n

    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
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. 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.
  4. Autor dieses Themas

    a************n

    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
  5. Ich hab deinen letzten Post über $str nicht verstanden.
    Bei mir funktioniert das aufjedenfall.
  6. Der PHP-Code muss natürlich in <? und ?> stehen, sonst wird er von highlight_string nicht orderlich erkannt als HTML-Code interpretiert.
  7. Autor dieses Themas

    a************n

    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;
    }
    
    ?>
  8. <?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
  9. 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
  10. Autor dieses Themas

    a************n


    $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
  11. 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
  12. 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.
  13. Autor dieses Themas

    a************n

    am dem bild ? schau mal neben der schwaren box da ist nochmal der ganze text und ich hab das gleiche nochmal in "scharf" hochgeladen.
  14. 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.
  15. Autor dieses Themas

    a************n

    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
  16. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!