",$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);
$listStart = 0;
while($listStart = strpos($string,"
",$listStart)){
$firstItem = strpos($string, "", $listStart);
$string = substr_replace($string, "", $firstItem, 5);
$listEnd = 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("
","[/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,"$tag>",$close+1)){
$closeCount++;
}
}
//nicht geschlossene Tags schließen
if($closeCount < $openCount){
for($i=0; $i<=($openCount-$closeCount); $i++){
$string .= "$tag>";
}
}
return $string;
}
?>