function popbox($txt) {
echo "";
}
function alert($C_alert,$I_goback='main.php') {
if(!empty($I_goback)) {
echo "";
} else {
echo "";
}
}
function randstr($len=6) {
$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-@#~'; // characters to build the password from
mt_srand((double)microtime()*1000000*getmypid()); // seed the random number generater (must be done)
$password='';
while(strlen($password)<$len)
$password.=substr($chars,(mt_rand()%strlen($chars)),1);
return $password;
}
function ckselect($str1,$str2) {
if($str1==$str2) {
return ' selected';
}
return '';
}
function myftp($ftp_server,$ftp_port,$ftp_username,$ftp_password,$ftp_path='/') {
$ftpid=@ftp_connect($ftp_server,$ftp_port) or die('Connect To Ftp Server Error!');
@ftp_login($ftpid,$ftp_username,$ftp_password) or die('Login Ftp Error!');
@ftp_chdir($ftpid,'/'.$ftp_path) or die('Chdir Error!');
return $ftpid;
}
function showtitle($str,$strlen=10,$other=true) {
$j = 0;
for($i=0;$i<$strlen;$i++)
if(ord(substr($str,$i,1))>0xa0) $j++;
if($j%2!=0) $strlen++;
$rstr=substr($str,0,$strlen);
if (strlen($str)>$strlen && $other) {$rstr.='...';}
return $rstr;
}
function make_link ($url, $linktext=false, $target=false, $extras=false) {
return sprintf("%s",
$url,
($target ? ' target="'.$target.'"' : ''),
($extras ? ' '.$extras : ''),
($linktext ? $linktext : $url)
);
}
function clean_note($text) {
$text = htmlspecialchars(trim($text));
$text = preg_replace("/((mailto|http|ftp|nntp|news):.+?)(>|s|)|"|.s|$)/","13",$text);
$fixes = array('
', '
', '
');reset($fixes);
while (list(,$f) = each($fixes)) {
$text = str_replace(htmlspecialchars($f), $f, $text);
$text = str_replace(htmlspecialchars(strtoupper($f)), $f, $text);
}
$text = str_replace (array ('
', '
'), '
', $text);
$text = str_replace (array ('
$text = str_replace("n", "
", $text);
if (function_exists("wordwrap")) {
$text = wordwrap($text);
}
// Preserve spacing of user notes
$text = str_replace(" ", " ", $text);
return $text;
}
function getimageinfo($img) {
$img_info = getimagesize($img);
switch ($img_info[2]) {
case 1:
$imgtype = "GIF";
break;
case 2:
$imgtype = "JPG";
break;
case 3:
$imgtype = "PNG";
break;
}
$img_size = ceil(filesize($img)/1000)."k";
$new_img_info = array (
"width"=>$img_info[0],
"height"=>$img_info[1],
"type"=>$imgtype,
"size"=>$img_size
);
return $new_img_info;
}
function getmicrotime() {
$tmp = explode(' ', microtime());
return (real)$tmp[1]. substr($tmp[0], 1);
}
function wfile($file,$content,$mode='w') {
$oldmask = umask(0);
$fp = fopen($file, $mode);
if (!$fp) return false;
fwrite($fp,$content);
fclose($fp);
umask($oldmask);
return true;
}
function tpl_load($tplfile,$path='./templates/',$empty='remove') {
global $tpl;
$path ? '' : $path='./templates/';
require_once 'HTML/Template/PHPLIB.php';
$tpl = new Template_PHPLIB($path,$empty);
$tpl->setFile('main',$tplfile);
}
function tpl_output() {
global $tpl;
$tpl->parse('output','main');
$tpl->p('output');
}
function mailSender($from, $to, $title, $content) {
$from ? $from = 'sender@phpe.net' : '';
$title ? $title = 'From Exceed PHP...' : '';
$sig = "
感谢您使用我们的服务.nn
Exceed PHP(超越PHP)n
$maildatenn
---------------------------------------------------------------------------------------
nn
去发现极限方法的唯一办法就是去超越它n
超越PHP欢迎您(http://www.phpe.net)n
";
$content .= $sig;
if (@mail($to, $title, $content, "From:$fromnReply-To:$from")) {
return true;
} else {
return false;
}
}
function br2none($str) {
return str_replace(array('
', '
'), "", $str);
}
function ubbParse($txt, $coverhtml=0) {
if ($coverhtml == 0) $txt = nl2br(new_htmlspecialchars($txt)); //BR和HTML转换
//只转换BR,不转换HTML
if ($coverhtml == 1) {
if (!preg_match('/
$txt = strip_tags($txt);
$txt = nl2br($txt);
} else {
$txt = str_replace('', '<?', $txt);
}
}
// pre and quote
//error_reporting(E_ALL);
$txt = preg_replace( "#[quote](.+?)[/quote]#is", "
1", $txt );
$txt = preg_replace( "#[code](.+?)[/code]#ise", "'
'.br2none('').''", $txt ); // Colors 支持篏套
while( preg_match( "#[color=([^]]+)](.+?)[/color]#is", $txt ) ) {
$txt = preg_replace( "#[color=([^]]+)](.+?)[/color]#is", "2", $txt );
}
// Align
$txt = preg_replace( "#[center](.+?)[/center]#is", "
$txt = preg_replace( "#[left](.+?)[/left]#is", "1", $txt );
$txt = preg_replace( "#[right](.+?)[/right]#is", "1", $txt );
// Sub & sup
$txt = preg_replace( "#[sup](.+?)[/sup]#is", "1", $txt );
$txt = preg_replace( "#[sub](.+?)[/sub]#is", "1", $txt );
// email tags
// [email]avenger@php.net[/email] [email=avenger@php.net]Email me[/email]
$txt = preg_replace( "#[email](S+?)[/email]#i" , "1", $txt );
$txt = preg_replace( "#[emails*=s*"([.w-]+@[.w-]+.[.w-]+)s*"s*](.*?)[/email]#i" , "2", $txt );
$txt = preg_replace( "#[emails*=s*([.w-]+@[.w-]+.[w-]+)s*](.*?)[/email]#i" , "2", $txt );
// url tags
// [url]http://www.phpe.net[/url] [url=http://www.phpe.net]Exceed PHP![/url]
$txt = preg_replace( "#[url](S+?)[/url]#i" , "1", $txt );
$txt = preg_replace( "#[urls*=s*"s*(S+?)s*"s*](.*?)[/url]#i" , "2", $txt );
$txt = preg_replace( "#[urls*=s*(S+?)s*](.*?)[/url]#i" , "2", $txt );
// Start off with the easy stuff
$txt = preg_replace( "#[b](.+?)[/b]#is", "1", $txt );
$txt = preg_replace( "#[i](.+?)[/i]#is", "1", $txt );
$txt = preg_replace( "#[u](.+?)[/u]#is", "1", $txt );
$txt = preg_replace( "#[s](.+?)[/s]#is", "
// Header text
$txt = preg_replace( "#[h([1-6])](.+?)[/h[1-6]]#is", "
2
", $txt );// Images
$txt = preg_replace( "#[img](.+?)[/img]#i", "500) this.width=500' align='center' hspace='10' vspace='10'>
", $txt );
// Attach
$txt = preg_replace( "#[attachs*=s*"s*(S+?)s*"s*](.*?)[/attach]#i" , "相关附件:1", $txt );
$txt = preg_replace( "#[attachs*=s*(S+?)s*](.*?)[/attach]#i" , "相关附件:1", $txt );
// Iframe
$txt = preg_replace( "#[iframe](.+?)[/iframe]#i", "
在新窗口打开链接", $txt );
// (c) (r) and (tm)
$txt = preg_replace( "#(c)#i" , "©" , $txt );
$txt = preg_replace( "#(tm)#i" , "" , $txt );
$txt = preg_replace( "#(r)#i" , "®" , $txt );
return $txt;
}
//重新格式化日期
function format_date($date) {
if (!preg_match('/^d+$/', $date)) $date = strtotime(trim($date));
$sec = time() - $date;
//Sec 1 day is 86400
if ($sec < 86400) {
return round($sec/3600). ' hours ago';
} elseif ($sec < (86400 * 7)) {
return round($sec/86400). ' days ago';
} elseif ($sec < (86400 * 7 * 4)) {
return round($sec/(86400*7)). ' weeks ago';
} else {
return date('Y-m-d', $date);
}
}
?>



