gesf
Active member
Two little function, just as an example!
I think you can understand it
I don´t believe in the lines marked with '// *'
Post reply to report some error. I´m working in this too
I think you can understand it
Code:
<?php
function trans_char($content_to_trans){
$trans_content = $content_to_trans;
$trans_content = preg_replace("\n", "<br />", $trans_content);
$trans_content = preg_replace("#\[list=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/list\]#si", "<li>\\2</li>", $trans_content); // *
$trans_content = preg_replace("#\[color=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/color\]#si", "<font color=\"\\1\">\\2</font>", $trans_content); // *
$trans_content = preg_replace("#\[size=([1-2]?[0-9])\](.*?)\[/size\]#si", "<font size=\"\\1\">\\2</font>", $trans_content);
$trans_content = preg_replace("#\[b\](.*?)\[/b\]#si", "<b>\\1</b>", $trans_content);
$trans_content = preg_replace("#\[u\](.*?)\[/u\]#si", "<u>\\1</u>", $trans_content);
$trans_content = preg_replace("#\[i\](.*?)\[/i\]#si", "<i>\\1</i>", $trans_content);
$trans_content = preg_replace("#\[center\](.*?)\[/center\]#si", "<center>\\1</center>", $trans_content);
$trans_content = preg_replace("#\[img\]((ht|f)tp://)([^\r\n\t<\"]*?)\[/img\]#sie", "<img src=\"\\1\" border=\"0\">", $trans_content);
$trans_content = preg_replace("!(\[php\]|<\?)(.*?)(\[/php\]|\?>)!ise","php_and_code('\\2','\\1','\\3','PHP')", $trans_content);
$trans_content = preg_replace("!(\[code\]|<\?)(.*?)(\[/code\]|\?>)!ise","php_and_code('\\2','\\1','\\3','CODE')", $trans_content);
$trans_content = preg_replace("#(^|[\n ])([\w]+?://[^ \"\n\r\t<]*)#is", "\\1<a href=\"\\2\" target=\"_blank\">\\2</a>", $trans_content);
$trans_content = preg_replace("#(^|[\n ])((www|ftp)\.[^ \"\t\n\r<]*)#is", "\\1<a href=\"http://\\2\" target=\"_blank\">\\2</a>", $trans_content);
$trans_content = preg_replace("#(^|[\n ])([a-z0-9&\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)*[\w]+)#i", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>", $trans_content);
return $trans_content;
}
function php_and_code($stringc, $stringb, $stringe, $stringt){
/* $stringc -> string content, $stringb -> string begin, $stringe -> string end, $stringt -> string type */
error_reporting(0);
// To [php.][/php.]
if($stringt == 'PHP'){
$stringb = "<?php"; $stringe = "?>";
$stringc = str_replace("\\\"","\"", $stringc);
ob_start();
highlight_string($stringb.'<br />'.$stringc.'<br />'.$stringe);
$stringc = ob_get_contents();
ob_end_clean();
}
// To [code.][/code.]
else{
$stringc = str_replace("\\\"","\"", $stringc);
$stringc = $stringb.'<br />'.$stringc.'<br />'.$stringe;
}
return $stringc;
}
?>
Post reply to report some error. I´m working in this too