📄 code.php
字号:
<?php
/*
code.php
Version : 1.0.0
Author : Tracemouse (tracemouse@msn.com)
Copyright:
Writed : 2003/08/07
Modified : 2003/12/02
*/
function censor($message) {
return $GLOBALS['_DCACHE']['censor'] ? preg_replace($GLOBALS['_DCACHE']['censor']['find'], $GLOBALS['_DCACHE']['censor']['replace'], $message) : $message;
}
function parseurl($message) {
return preg_replace( array(
"/(?<=[^\]A-Za-z0-9-=\"'\\/])(https?|ftp|gopher|news|telnet|mms){1}:\/\/([A-Za-z0-9\/\-_+=.~!%@?#%&;:$\\()|]+)/is",
"/([\n\s])www\.([a-z0-9\-]+)\.([A-Za-z0-9\/\-_+=.~!%@?#%&;:$\[\]\\()|]+)((?:[^,\t\s\n\r]*)?)/is",
"/(?<=[^\]A-Za-z0-9\/\-_.~?=:.])([_a-zA-Z0-9-]+(\.[_a-zA-Z0-9-]+)*@[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(\.[a-zA-Z]{2,4}))/si"
), array(
"[URL]\\1://\\2[/URL]",
"\\1[URL]http://www.\\2.\\3\\4[/URL]",
"[EMAIL]\\0[/EMAIL]"
), ' '.$message);
}
function postify($message,$allowhtml = 0, $allowbbcode = 1, $allowimgcode = 1)
{
global $db;
if(!$allowhtml)
{
$message = dhtmlspecialchars($message);
}
if($allowbbcode)
{
if(empty($searcharray['bbcode']) || empty($replacearray['bbcode']))
{
$nests = 2;
$searcharray['bbcode'] = array(
"/\s*\[QUOTE\][\n\r]*(.+?)[\n\r]*\[\/QUOTE\]\s*/is",
"/\[URL\]\s*(www.|https?:\/\/|ftp:\/\/|gopher:\/\/|news:\/\/|telnet:\/\/|rtsp:\/\/|mms:\/\/){1}(.+?)\s*\[\/URL\]/ies",
"/\[URL=www.(.+?)\](.+?)\[\/URL\]/is",
"/\[URL=(https?|ftp|gopher|news|telnet|rtsp|mms){1}:\/\/(.+?)\](.+?)\[\/URL\]/is",
"/\[EMAIL\]\s*([A-Za-z0-9\-_.]+)@([A-Za-z0-9\-_]+[.][A-Za-z0-9\-_.]+)\s*\[\/EMAIL\]/is",
"/\[EMAIL=([A-Za-z0-9\-_.]+)@([A-Za-z0-9\-_]+[.][A-Za-z0-9\-_.]+)\](.+?)\[\/EMAIL\]/is",
"/\[COLOR=(.+?)\](.+?)\[\/COLOR\]/is",
"/\[SIZE=(.+?)\](.+?)\[\/SIZE\]/is",
"/\[FONT=(.+?)\](.+?)\[\/FONT\]/is",
"/\[ALIGN=(.+?)\](.+?)\[\/ALIGN\]/is"
);
$replacearray['bbcode'] = array(
"<br><br><center><table border=\"0\" width=\"90%\" cellspacing=\"0\" cellpadding=\"0\"><tr><td> Quote:</td></tr><tr><td><table border=\"0\" width=\"100%\" cellspacing=\"1\" cellpadding=\"10\" bgcolor=\"".ALTBG2."\"><tr><td width=\"100%\" bgcolor=\"".BORDERCOLOR."\">\\1</td></tr></table></td></tr></table></center><br>",
"urlcut('\\1\\2')",
"<a href=\"http://www.\\1\" target=\"_blank\">\\2</a>",
"<a href=\"\\1://\\2\" target=\"_blank\">\\3</a>",
"<a href=\"mailto:\\1@\\2\">\\1@\\2</a>",
"<a href=\"mailto:\\1@\\2\">\\3</a>",
"<font color=\"\\1\">\\2</font>",
"<font size=\"\\1\">\\2</font>",
"<font face=\"\\1\">\\2</font>",
"<p align=\"\\1\">\\2</p>",
);
for($i = (count($searcharray['bbcode']) - 1) * $nests; $i >= 0; $i -= $nests)
{
for($j = $i; $j > $i - $nests; $j--)
{
$searcharray['bbcode'][$j] = $searcharray['bbcode'][(($i + 1) / $nests)];
$replacearray['bbcode'][$j] = $replacearray['bbcode'][(($i + 1) / $nests)];
}
}
}
$message = preg_replace($searcharray['bbcode'], $replacearray['bbcode'], $message);
$message = str_replace('[B]', '<b>', $message);
$message = str_replace('[/B]', '</b>', $message);
$message = str_replace('[I]', '<i>', $message);
$message = str_replace('[/I]', '</i>', $message);
$message = str_replace('[U]', '<u>', $message);
$message = str_replace('[/U]', '</u>', $message);
$message = str_replace('[FLY]', '<marquee width="90%" behavior="alternate" scrollamount="3">', $message);
$message = str_replace('[/FLY]', '</marquee>', $message);
$message = str_replace('[LIST]', '<ul>', $message);
$message = str_replace('[LIST=1]', '<ol type=1>', $message);
$message = str_replace('[LIST=a]', '<ol type=a>', $message);
$message = str_replace('[LIST=A]', '<ol type=A>', $message);
$message = str_replace('[*]', '<li>', $message);
$message = str_replace('[/LIST]', '</ul></ol>', $message);
}
if($allowimgcode) {
if(empty($searcharray['imgcode']) || empty($replacearray['imgcode']))
{
$searcharray['imgcode'] = array(
"/\[SWF\]\s*(.+?)\s*\[\/SWF\]/ies",
"/\[SWF=(\d+?)[x|\,](\d+?)\]\s*(.+?)\s*\[\/SWF\]/ies",
"/\[IMG\]\s*(.+?)\s*\[\/IMG\]/ies",
"/\[IMG=(\d+?)[x|\,](\d+?)\]\s*(.+?)\s*\[\/IMG\]/ies",
"/\[IFRAME\]\s*(.+?)\s*\[\/IFRAME\]/ies",
"/\[WMV\]\s*(.+?)\s*\[\/WMV\]/ies",
"/\[MID\]\s*(.+?)\s*\[\/MID\]/ies",
"/\[RA\]\s*(.+?)\s*\[\/RA\]/ies",
"/\[RM\]\s*(.+?)\s*\[\/RM\]/ies",
);
$replacearray['imgcode'] = array(
"bbcodeurl('\\1', '<a href=\"%s\" target=\"_blank\">[Open New Window]</a><br><embed width=\"550\" height=\"375\" src=\"%s\" type=\"application/x-shockwave-flash\"></embed>')",
"bbcodeurl('\\3', '<embed width=\"\\1\" height=\"\\2\" src=\"%s\" type=\"application/x-shockwave-flash\"></embed>')",
"bbcodeurl('\\1', '<img src=\"%s\" border=\"0\" onload=\"if(this.width>screen.width-333) {this.width=screen.width-333;this.alt=\'Click Here to Open New Window\';}\" onmouseover=\"if(this.alt) this.style.cursor=\'hand\';\" onclick=\"window.open(\'%s\');\">')",
"bbcodeurl('\\3', '<img width=\"\\1\" height=\"\\2\" src=\"%s\" border=\"0\" onload=\"if(this.width>screen.width-333) {this.width=screen.width-333;this.alt=\'Click Here to Open New Window\';}\" onmouseover=\"if(this.alt) this.style.cursor=\'hand\';\" onclick=\"if(this.alt) window.open(\'%s\');\">')",
"bbcodeurl('\\1', '<iframe src=\"%s\" frameborder=\"0\" allowtransparency=\"true\" scrolling=\"yes\" width=\"97%%\" height=\"480\"></iframe>')",
"bbcodeurl('\\1', '<embed src=\"%s\" height=\"256\" width=\"314\" autostart=\"0\"></embed>')",
"bbcodeurl('\\1', '<embed src=\"%s\" height=\"45\" width=\"314\" autostart=0 ></embed>')",
"bbcodeurl('\\1', '<object classid=\"clsid:CFCDAA03-8BE4-11CF-B84B-0020AFBBCCFA\" id=\"RAOCX\" width=\"253\" height=\"60\"><param name=\"_ExtentX\" value=\"6694\"><param name=\"_ExtentY\" value=\"1588\"><param name=\"AUTOSTART\" value=\"0\"><param name=\"SHUFFLE\" value=\"0\"><param name=\"PREFETCH\" value=\"0\"><param name=\"NOLABELS\" value=\"0\"><param name=\"SRC\" value=\"%s\"><param name=\"CONTROLS\" value=\"StatusBar,ControlPanel\"><param name=\"LOOP\" value=\"0\"><param name=\"NUMLOOP\" value=\"0\"><param name=\"CENTER\" value=\"0\"><param name=\"MAINTAINASPECT\" value=\"0\"><param name=\"BACKGROUNDCOLOR\" value=\"#000000\"><embed src=\"%s\" width=\"253\" autostart=\"true\" height=\"60\"></embed></object>')",
"bbcodeurl('\\1', '<object classid=\"clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA\" height=\"241\" id=\"Player\" width=\"316\" viewastext><param name=\"_ExtentX\" value=\"12726\"><param name=\"_ExtentY\" value=\"8520\"><param name=\"AUTOSTART\" value=\"0\"><param name=\"SHUFFLE\" value=\"0\"><param name=\"PREFETCH\" value=\"0\"><param name=\"NOLABELS\" value=\"0\"><param name=\"CONTROLS\" value=\"ImageWindow\"><param name=\"CONSOLE\" value=\"_master\"><param name=\"LOOP\" value=\"0\"><param name=\"NUMLOOP\" value=\"0\"><param name=\"CENTER\" value=\"0\"><param name=\"MAINTAINASPECT\" value=\"%s\"><param name=\"BACKGROUNDCOLOR\" value=\"#000000\"></object><br><object classid=clsid:CFCDAA03-8BE4-11cf-B84B-0020AFBBCCFA height=32 id=Player width=316 VIEWASTEXT><param name=\"_ExtentX\" value=\"18256\"><param name=\"_ExtentY\" value=\"794\"><param name=\"AUTOSTART\" value=\"-1\"><param name=\"SHUFFLE\" value=\"0\"><param name=\"PREFETCH\" value=\"0\"><param name=\"NOLABELS\" value=\"0\"><param name=\"CONTROLS\" value=\"controlpanel\"><param name=\"CONSOLE\" value=\"_master\"><param name=\"LOOP\" value=\"0\"><param name=\"NUMLOOP\" value=\"0\"><param name=\"CENTER\" value=\"0\"><param name=\"MAINTAINASPECT\" value=\"0\"><param name=\"BACKGROUNDCOLOR\" value=\"#000000\"><param name=\"SRC\" value=\"\\1\"></object>')"
);
}
$message = preg_replace($searcharray['imgcode'], $replacearray['imgcode'], $message);
}
$message = nl2br($message);
$message = str_replace("\t", ' ', $message);
$message = str_replace(' ', ' ', $message);
$message = str_replace(' ', ' ', $message);
return $message;
}
function urlcut($url) {
$length = 65;
$urllink = "<a href=\"".(substr(strtolower($url), 0, 4) == 'www.' ? "http://$url" : $url)."\" target=\"_blank\">";
if(strlen($url) > $length) {
$url = substr($url, 0, intval($length * 0.5)).' ... '.substr($url, - intval($length * 0.3));
}
$urllink .= $url.'</a>';
return $urllink;
}
function bbcodeurl($url, $tags) {
if(!preg_match("/<.+?>/s",$url)) {
if(!in_array(strtolower(substr($url, 0, 6)), array('http:/', 'ftp://', 'rtsp:/', 'mms://'))) {
$url = 'http://'.$url;
}
return sprintf($tags, $url, $url);
} else {
return ' '.$url;
}
}
?>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -