PHP code highlighten

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Top Low-Code Developer Gezocht!

Bedrijfsomschrijving Unieke Kansen, Uitstekende Arbeidsvoorwaarden & Inspirerend Team Wij zijn een toonaangevende, internationale organisatie die de toekomst van technologie vormgeeft door het creëren van innovatieve en baanbrekende oplossingen. Ons succes is gebaseerd op een hecht en gepassioneerd team van professionals die altijd streven naar het overtreffen van verwachtingen. Als jij deel wilt uitmaken van een dynamische, vooruitstrevende en inspirerende werkomgeving, dan is dit de perfecte kans voor jou! Functieomschrijving Als Low-Code Developer ben je een cruciaal onderdeel van ons team. Je werkt samen met collega's uit verschillende disciplines om geavanceerde applicaties te ontwikkelen en te optimaliseren met behulp van Low-code

Bekijk vacature »

B a s
Beheerder

B a s

21/05/2004 13:20:00
Quote Anchor link
Ello mensen.. Zoals ik nu hier PHP highlight op deze huidige site, vind ik een niet erg goede manier..

Ik wil het nu anders hebben op de nieuwe site (PHPhulp v6). Ik heb nu een probleem. Ik ben erg slecht in regex en ik heb wel iets geprobeerd maar het lukt me niet :/

Het gaat om het volgende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<?
$text
= preg_replace("/<\?(.+?)\?>
/is", highlight_php('\1'), $text);
?>

Wat ik dus eigenlijk wil is alles tussen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? en ?>
herkennen, en dan een functie gooien over het geen wat er tussen zit. In dit geval de functie highlight_php() die ik zelf aan heb gemaakt. Alleen hij herkent niks tussen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? en ?>
. Iemand een idee? Alvast bedankt..
 
PHP hulp

PHP hulp

26/11/2024 08:45:46
 
Rick

Rick

21/05/2004 16:32:00
Quote Anchor link
ik denk dat je preg_replace_callback hiervoor nodig hebt :P
 
B a s
Beheerder

B a s

22/05/2004 16:05:00
Quote Anchor link
helluuppp!! :) niemand anders?
 
Mitch X

Mitch X

22/05/2004 16:24:00
Quote Anchor link
Hmm ik gebruik /s nooit maar staat dat niet voor Single Line?
Matcht ie hem wel? Dus met dezelfde code alle pref_match?
 

22/05/2004 16:32:00
Quote Anchor link
Nee hij matched ook niet :/ Maar ik weet de balle van regex dus misschien moet het ook wel helemaal anders. .zal nog ff wat php functies doorlezen maar heb er niet zoveel tijd voor.. dacht ff makkelijk te doen door te vragen op het forum.. misschien had iemand al zoiets kant en klaar liggen.. :)
 
Mitch X

Mitch X

22/05/2004 18:22:00
Quote Anchor link
(.+?)
Hmm wat wil dat zeggen ^o)
. = willekeurig teken
+ = voorgaand teken mag g1 0 keer voorkomen (dus 1,2 etc)
? = voorgaand teken komt 1 of 0 keer voor ...

Owja en dit :
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?

    $tekst
= "<? $name = \"Mitch\"; ?>";
    
    if(preg_match("/<\?(.+)\?>
/si", $tekst))
{
echo "Gelukt!";
}
else
{
echo "Mislukt!";
}

?>
Dat werkt bij mij gewoon , ik krijg gewoon de melding "Gelukt!" :)
 
B a s
Beheerder

B a s

22/05/2004 23:36:00
Quote Anchor link
Vaag..

Ik zal het ff precies uitleggen..

Ik heb een tekst bijvoorbeeld:

----
Blablablablabla

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? echo "wat php code"; ?>


blablablablabla etc.
----

Dan haal ik de functie: parse_text() eroverheen. Dit is mijn eigen gemaakte functie met ubb codes etc.

Hierin staat ook (in de functie parse_text()):
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<?
$text
= preg_replace("/<\?(.+)\?>
/si", highlight_php("\\1"), $text);
?>

Dit roept dus de functie highlight_php() aan. Dit is de functie highlight_php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
<?
function highlight_php($code)
{

    ob_start();
    highlight_string($code);
    $code = ob_get_contents();
    ob_end_clean();
    
    return $code;
}

?>


Misschien ligt het aan mij en doe ik iets verkeerd maar ik zie het niet en het werkt ook niet :(((
 
Rick

Rick

23/05/2004 02:46:00
Quote Anchor link
ok, en dit?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<?
$text
= preg_replace("/(<\?.+\?>
)/sie","highlight_php('\\1')", $text);
?>

BTW: wat is het nut hiervan?
als je gewoon highlight_string doet dan krijg je toch exact dezelfde output?
die kijkt ook alleen naar code tussen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? en ?>
Gewijzigd op 23/05/2004 02:50:00 door Rick
 
B a s
Beheerder

B a s

23/05/2004 09:19:00
Quote Anchor link
Nou ja .. fuck it :p heb het al anders gedaan zonder al dit moeilijke gedoe.. wou gwoon ff kijken of het kon
 
Mitch X

Mitch X

23/05/2004 09:51:00
Quote Anchor link
haha ;)
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.