",$string); $string = str_replace("[F]","",$string); $string = str_replace("[/f]","",$string); $string = str_replace("[/F]","",$string); $string = str_replace("[fett]", "", $string); $string = str_replace("[/fett]", "", $string); //Kursiv $string = str_replace("[k]","",$string); $string = str_replace("[K]","",$string); $string = str_replace("[/k]","",$string); $string = str_replace("[/K]","",$string); //Listen $string = str_replace("[liste]","

",$string); $listStart = 0; while($listStart = strpos($string,"

", $listStart) + 5; $list = str_replace("
", "\n", substr($string, $listStart, $listEnd)); $string = substr_replace($string, $list, $listStart, $listEnd); $listStart++; # change 2007-11-26 } //Links $lower = strtolower($string); $urlClose = 0; //öffnendes [url= $urlOpen = strpos($lower,"[url=",$urlClose); while($urlOpen !== false){ //Ende des öffnenden Tags ] $innerText = strpos($lower,"]",$urlOpen)+1; //schließender Tag [/url] $urlClose = strpos($lower,"[/url]",$urlOpen); //Ende der eigentlichen URL entweder bei Leerzeichen oder ] $urlEnd = strpos($lower," ",$urlOpen); //Indexprüfungen um Endlosschleifen bei Syntaxfehlern im BBcode zu verhindern if($innerText == 1) $innerText = strlen($lower) - 1; if($innerText < $urlEnd || $urlEnd == 0) $urlEnd = $innerText-1; if(!$urlClose) $urlClose = strlen($lower) - 1; //URL extrahieren $url = substr($string,$urlOpen+5,$urlEnd-$urlOpen-5); //Linktext extrahieren $text = substr($string,$innerText,$urlClose-$innerText); //Target ermitteln $targetstr = substr($lower,$urlEnd,10); if(strpos($targetstr,"nein") > 0){ $target = "_self"; } else{ $target = "_blank"; } //Ersetzen $href = "$text"; $string = substr_replace($string,$href,$urlOpen,$urlClose+6-$urlOpen); $lower = strtolower($string); $urlOpen = @strpos($lower,"[url=",$urlClose); } $string = checkTag($string,"strong"); $string = checkTag($string,"em"); return $string; } # wandelt BBCode in Plain Text um //----------------------------- function BBCode2PlainText($string){ //----------------------------- //Fett $string = str_replace("[f]","*",$string); $string = str_replace("[F]","*",$string); $string = str_replace("[/f]","*",$string); $string = str_replace("[/F]","*",$string); $string = str_replace("[fett]", "*", $string); $string = str_replace("[/fett]", "*", $string); //Kursiv $string = str_replace("[k]","*",$string); $string = str_replace("[K]","*",$string); $string = str_replace("[/k]","*",$string); $string = str_replace("[/K]","*",$string); //Listen $string = str_replace("[liste]","",$string); $string = str_replace("[LISTE]","",$string); $string = str_replace("[punkt]"," - ",$string); $string = str_replace("[PUNKT]"," - ",$string); $string = str_replace("[*]"," - ",$string); $string = str_replace("[/liste]","",$string); $string = str_replace("[/LISTE]","",$string); //Links $lower = strtolower($string); $urlClose = 0; //öffnendes [url= $urlOpen = strpos($lower,"[url=",$urlClose); while($urlOpen !== false){ //Ende des öffnenden Tags ] $innerText = strpos($lower,"]",$urlOpen)+1; //schließender Tag [/url] $urlClose = strpos($lower,"[/url]",$urlOpen); //Ende der eigentlichen URL entweder bei Leerzeichen oder ] $urlEnd = strpos($lower," ",$urlOpen); //Indexprüfungen um Endlosschleifen bei Syntaxfehlern im BBcode zu verhindern if($innerText == 1) $innerText = strlen($lower) - 1; if($innerText < $urlEnd || $urlEnd == 0) $urlEnd = $innerText-1; if(!$urlClose) $urlClose = strlen($lower) - 1; //URL extrahieren $url = substr($string,$urlOpen+5,$urlEnd-$urlOpen-5); //Linktext extrahieren $text = substr($string,$innerText,$urlClose-$innerText); //Target ermitteln $targetstr = substr($lower,$urlEnd,10); if(strpos($targetstr,"nein") > 0){ $target = "_self"; } else{ $target = "_blank"; } //Ersetzen $href = $url; $string = substr_replace($string,$href,$urlOpen,$urlClose+6-$urlOpen); $lower = strtolower($string); $urlOpen = @strpos($lower,"[url=",$urlClose); } return $string; } #wandelt Html Code in BBCode um //-------------------------------- function HTML2BBCode($string){ //-------------------------------- $string = html_entity_decode($string); $string = str_replace("
","",$string); $string = str_replace("
","",$string); $string = str_replace("","[fett]",$string); $string = str_replace("","[/fett]",$string); $string = str_replace("","[kursiv]",$string); $string = str_replace("","[/kursiv]",$string); $string = str_replace("","[/liste]",$string); $string = str_replace("
  • ","[*]",$string); $string = str_replace("
  • ","",$string); $string = str_replace("\t"," ",$string); $aClose = 0; $aOpen = strpos($string,"",$aOpen); if($aClose === false){ $aClose = strlen($string)-1; } //URL extrahieren $urlStart = $aOpen+9; $urlEnd = strpos($string,"\"",$urlStart+1); $url = substr($string,$urlStart,$urlEnd-$urlStart); //Text extrahieren $textStart = strpos($string,">",$aOpen)+1; $text = substr($string,$textStart,$aClose-$textStart); //Target $targetstr = substr($string,$urlEnd,20); if(strpos($targetstr,"_blank") > 0){ $target = "ja"; } else{ $target = "nein"; } $url = "[url=$url neu=$target]".$text."[/url]"; $string = substr($string,0, $aOpen) . $url . substr($string, $aClose+4); $aOpen = strpos($string,"",$open+1)){ $openCount++; if($close = strpos($string,"",$close+1)){ $closeCount++; } } //nicht geschlossene Tags schließen if($closeCount < $openCount){ for($i=0; $i<=($openCount-$closeCount); $i++){ $string .= ""; } } return $string; } ?>