[PHP] Highlighten van een string

Pagina: 1
Acties:

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 27-08 21:59

NMe

Quia Ego Sic Dico.

Topicstarter
Ik post dit topic in dit forum, omdat ik bijna zeker ben dat dit een configuratieprobleem is, en niet een fout in mijn code.

Ik ben bezig wat aanpassingen te maken in phpBB, en wil daarbij een [php]-tag toevoegen, die uiteraard PHP code moet highlighten. Nou dacht ik, das makkelijk, gewoon highlight_string() eroverheen gooien, en klaar. Nou krijg ik echter heel vreemde output wanneer ik een string afdruk. Zo geeft deze regel:
PHP:
1
$string = "test";

bij mij $string in het blauw weer, en die = is groen. "test is rood, maar dan komt het. De laatste " is groen... Na deze regel wordt alle tekst die erop volgt ook rood, met uitzondering van aanhalingstekens; deze worden allemaal groen.

Ik heb zelf geen flauw idee waar het aan kan liggen, ik gebruik iig de volgende functie:
PHP:
1
2
3
4
5
6
7
8
9
10
<?
function highlight_php($t) {
  $t = trim($t);
  if (substr($t, 0, 2) != "<?")
    $t = "<?\n" . $t;
  if (substr($t, -2) != "?>")
    $t .= "\n?>";
  return highlight_string($t, true);
}
?>


De user notes van PHP.net zijn down, ik had gehoopt daar wat in te kunnen vinden, maar dat gaat voorlopig dus niet lukken.

Ik gebruik overigens versie 4.2.3 van PHP, en mijn phpInfo kun je hier vinden:
http://www.nme.nu/phpinfo.php

Heeft iemand een idee in welke richting ik moet zoeken?

[ Voor 10% gewijzigd door NMe op 03-08-2004 16:02 ]

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.


  • GlowMouse
  • Registratie: November 2002
  • Niet online
Als ik het volgende PHP bestand aanmaak, doet hij het goed. Je zou hetzelfde eens kunnen testen, en dan weet je of het ligt aan je phpBB implementatie ligt.
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
<?
function highlight_php($t) {
  $t = trim($t);
  if (substr($t, 0, 2) != "<?")
    $t = "<?\n" . $t;
  if (substr($t, -2) != "?>")
    $t .= "\n?>";
  return highlight_string($t, true);
}

echo highlight_php('$string = "test";');
?>

  • NMe
  • Registratie: Februari 2004
  • Laatst online: 27-08 21:59

NMe

Quia Ego Sic Dico.

Topicstarter
Dat geeft idd wel de goeie output... :?

Ik kan me niet voorstellen dat phpBB verder nog iets doet met die string, en in de database zien beide quotes er hetzelfde uit... Maja, als dit geen configuratieprobleem is, dan kan ik maar beter naar het support forum van phpBB gaan. Tnx anyway. :)

'E's fighting in there!' he stuttered, grabbing the captain's arm.
'All by himself?' said the captain.
'No, with everyone!' shouted Nobby, hopping from one foot to the other.