Tjo, ich hab jetz ma nen syntax-highlighter für html geschrieben (unterstützt weder includiertes css, php noch js)
hier der php-code:
Code:
	function syntax_high($code, $in_com) {
		$code = str_replace('"', '"', $code);
		if (count(explode("<!--", $code)) > 1) {
			$code = ereg_replace&#40;'&lt;!--&#40;.*&#41;', '<span class="comment">&lt;!--\1', $code&#41;;
			$in_com = true;
		&#125; elseif &#40;count&#40;explode&#40;"--&gt;", $code&#41;&#41; > 1&#41; &#123;
			$code = ereg_replace&#40;'&#40;.*&#41;--&gt;', '\1--&gt;</span>', $code&#41;;
			$in_com = false;
		&#125; elseif &#40;$in_com&#41; &#123;
			$code = ereg_replace&#40;'&#40;.*&#41;', '<span class="comment">\1</span>', $code&#41;;
		&#125; else &#123;
			$code = ereg_replace&#40;'&#40;&#91;^ &#93;*&#41;="&#40;&#91;^"&#93;*&#41;"', '<span class="attr">\1</span>="<span class="attr_val">\2</span>"', $code&#41;;
			$code = ereg_replace&#40;'&lt;&#40;&#91;^&&#93;*&#41;&gt;', '<span class="lt">&lt;</span><span class="tag">\1</span><span class="gt">&gt;</span>', $code&#41;;
			$code = ereg_replace&#40;'&lt;/&#40;&#91;^&&#93;*&#41;&gt;', '<span class="lt">&lt;/</span><span class="tag">\1</span><span class="gt">&gt;</span>', $code&#41;;
		&#125;
		return array&#40;$in_com, $code&#41;;
	&#125;
	function echo_code&#40;$text&#41; &#123;
	$return = '';
	$return .=  '<pre>'."\n";
	$parts = explode&#40;"\n", $text&#41;;
 $max = &#40;string&#41;count&#40;$parts&#41;;
 $length = strlen&#40;$max&#41;;
 $sy_text = '';
 $in_com = false;
 $sy_text_array = array&#40;&#41;;
 foreach &#40;$parts as $key=>$val&#41; &#123;
	$sy_text_array = syntax_high&#40;htmlentities&#40;$val&#41;, $in_com&#41;;
	$in_com = $sy_text_array&#91;0&#93;;
	$sy_text .= ' '.$sy_text_array&#91;1&#93;."\n";
 &#125;
 $parts = explode&#40;"\n", $sy_text&#41;;
 $max = &#40;string&#41;count&#40;$parts&#41;;
 $length = strlen&#40;$max&#41;;
 foreach &#40;$parts as $key=>$val&#41; &#123;
	$num = $length - strlen&#40;$key + 1&#41;;
	$return .=  '<span class="num">';
	for&#40;$i=0;$i<$num;$i++&#41; &#123;$return .=  '0';&#125;
	$return .=  &#40;$key + 1&#41;.'</span>';
	$return .=  $val."\n";
 &#125;
	$return .=  '</pre>';
	return $return;
	&#125;
das css zum gestalten der farbigen ausgabe:
Code:
pre span.lt, pre span.gt &#123;
	color&#58;#0000ff;
&#125;
pre span.tag &#123;
	color&#58;#0000ff;
&#125;
pre span.attr &#123;
	color&#58;#ff0000;
&#125;
pre span.attr_val &#123;
	color&#58;#ff00ff;
&#125;
pre span.comment &#123;
	color&#58;#00cc00;
&#125;
pre span.num &#123;
	color&#58;#555555;
&#125;
hier ein besipiel-funktionsaufruf:
Code:
$text = 'hallo';
echo echo_code&#40;$text&#41;;
und die ausgabe:
Code:
<pre>
1 hallo
</pre>
oder so ähnlich
Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!