k one detail for my forum...how do you not parse the code they post? i know i could come up with a "fake" file exstintion and it will save it and display it as text but whats a better way?
Announcement
Collapse
No announcement yet.
displaying code without it being parsed
Collapse
X
-
-
just what you need thers also highlight_string()photoshop too expensive? use the GIMP! www.gimp.org
Comment
-
Right, well you'll need to use the following function now (thanks to Yakir Sitbon from php.net manual)
PHP Code:
$thread = "<?php echo 'hello'; ?> <html>";
function PrintCode ($code,
$normal_html='#ff0000',
$default='#0000BB',
$keyword='#000080',
$string='#b60033',
$comment='#008000',
$tag_open_close='#ffffcc'
)
{
echo "<style>\n";
echo ".source span.normal_html { color: $normal_html; }\n";
echo ".source span.default { color: $default; }\n";
echo ".source span.keyword { color: $keyword; FONT-WEIGHT: bold;}\n";
echo ".source span.string { color: $string; }\n";
echo ".source span.comment { color: $comment; font-style: italic; }\n";
echo ".source span.tag_open_close { color: $default; BACKGROUND-COLOR: $tag_open_close; }\n";
echo "</style>\n";
{
echo '<pre class="source">';
$source = highlight_string($code, TRUE);
// search style.
$search[0] = '<font color="'.ini_get('highlight.html').'">';
$search[1] = '<font color="'.ini_get('highlight.default').'">';
$search[2] = '<font color="'.ini_get('highlight.keyword').'">';
$search[3] = '<font color="'.ini_get('highlight.string').'">';
$search[4] = '<font color="'.ini_get('highlight.comment').'">';
$search[5] = '</font>';
$search[6] = '<br />';
$search[7] = '\r';
$search[8] = ' ';
$search[9] = '<?';
$search[10] = '?>';
// replace style.
$replace[0] = '<span class="normal_html">';
$replace[1] = '<span class="default">';
$replace[2] = '<span class="keyword">';
$replace[3] = '<span class="string">';
$replace[4] = '<span class="comment">';
$replace[5] = '</span>';
$replace[6] = "\n";
$replace[7] = '';
$replace[8] = ' ';
$replace[9] = '<span class="tag_open_close"><?</span>';
$replace[10] = '<span class="tag_open_close">?></span>';
echo str_replace($search, $replace, $source);
echo '</pre>';
}
}
PHP Code:PrintCode($thread);
Comment
Comment