最近刚刚完成手中的项目,比较闲。来这儿转转,把积累的一些技巧分享给大家! 1、关于php重定向 方法一:header("location: index.php"); 方法二:echo "<script>window.location ="$php_self";</script>"; 方法三:echo "<meta http-equiv="refresh" content="0; url=index.php">";
2、获取访问者浏览器
function browse_infor() { $browser=";$browserver="; $browsers =array("lynx","mosaic","aol","opera","java","macweb","webexplorer","omniweb"); $agent = $globals["http_user_agent"]; for ($i=0; $i<=7; $i++) { if (strpos($agent,$browsers[$i])) { $browser = $browsers[$i]; $browserver ="; } } if (ereg("mozilla",$agent) && !ereg("msie",$agent)) { $temp =explode("(", $agent); $part=$temp[0]; $temp =explode("/", $part); $browserver=$temp[1]; $temp =explode(" ",$browserver); $browserver=$temp[0]; $browserver =preg_replace("/([d.]+)/","1",$browserver); $browserver = " $browserver"; $browser = "netscape navigator"; } if (ereg("mozilla",$agent) && ereg("opera",$agent)) { $temp =explode("(", $agent); $part=$temp[1]; $temp =explode(")", $part); $browserver=$temp[1]; $temp =explode(" ",$browserver);$browserver=$temp[2]; $browserver =preg_replace("/([d.]+)/","1",$browserver); $browserver = " $browserver"; $browser = "opera"; } if (ereg("mozilla",$agent) && ereg("msie",$agent)) { $temp = explode("(", $agent); $part=$temp[1]; $temp = explode(";",$part); $part=$temp[1]; $temp = explode(" ",$part);$browserver=$temp[2]; $browserver =preg_replace("/([d.]+)/","1",$browserver); $browserver = " $browserver"; $browser = "internet explorer"; } if ($browser!=") { $browseinfo = "$browser$browserver"; } else { $browseinfo = "unknown"; } return $browseinfo; } //调用方法$browser=browseinfo() ;直接返回结果
3、获取访问者操作系统
function osinfo() { $os="; $agent = $globals["http_user_agent"]; if (eregi('win',$agent) && strpos($agent, '95')) { $os="windows 95"; } elseif (eregi('win 9x',$agent) && strpos($agent, '4.90')) { $os="windows me"; } elseif (eregi('win',$agent) && ereg('98',$agent)) { $os="windows 98"; } elseif (eregi('win',$agent) && eregi('nt 5.0',$agent)) { $os="windows 2000"; } elseif (eregi('win',$agent) && eregi('nt',$agent)) { $os="windows nt"; } elseif (eregi('win',$agent) && eregi('nt 5.1',$agent)) { $os="windows xp"; } elseif (eregi('win',$agent) && ereg('32',$agent)) { $os="windows 32"; } elseif (eregi('linux',$agent)) { $os="linux"; } elseif (eregi('unix',$agent)) { $os="unix"; } elseif (eregi('sun',$agent) && eregi('os',$agent)) { $os="sunos"; } elseif (eregi('ibm',$agent) && eregi('os',$agent)) { $os="ibm os/2"; } elseif (eregi('mac',$agent) && eregi('pc',$agent)) { $os="macintosh"; } elseif (eregi('powerpc',$agent)) { $os="powerpc"; } elseif (eregi('aix',$agent)) { $os="aix"; } elseif (eregi('hpux',$agent)) { $os="hpux"; } elseif (eregi('netbsd',$agent)) { $os="netbsd"; } elseif (eregi('bsd',$agent)) { $os="bsd"; } elseif (ereg('osf1',$agent)) { $os="osf1"; } elseif (ereg('irix',$agent)) { $os="irix"; } elseif (eregi('freebsd',$agent)) { $os="freebsd"; } if ($os=='') $os = "unknown"; return $os; } //调用方法$os=os_infor() ;
4、文件格式类
$mime_types = array( 'gif' => 'image/gif', 'jpg' => 'image/jpeg', 'jpeg' => 'image/jpeg', 'jpe' => 'image/jpeg', 'bmp' => 'image/bmp', 'png' => 'image/png', 'tif' => 'image/tiff', 'tiff' => 'image/tiff', 'pict' => 'image/x-pict', 'pic' => 'image/x-pict', 'pct' => 'image/x-pict', 'tif' => 'image/tiff', 'tiff' => 'image/tiff', 'psd' => 'image/x-photoshop',
'swf' => 'application/x-shockwave-flash', 'js' => 'application/x-javascript', 'pdf' => 'application/pdf', 'ps' => 'application/postscript', 'eps' => 'application/postscript', 'ai' => 'application/postscript', 'wmf' => 'application/x-msmetafile',
'css' => 'text/css', 'htm' => 'text/html', 'html' => 'text/html', 'txt' => 'text/plain', 'xml' => 'text/xml', 'wml' => 'text/wml', 'wbmp' => 'image/vnd.wap.wbmp',
'mid' => 'audio/midi', 'wav' => 'audio/wav', 'mp3' => 'audio/mpeg', 'mp2' => 'audio/mpeg',
'avi' => 'video/x-msvideo', 'mpeg' => 'video/mpeg', 'mpg' => 'video/mpeg', 'qt' => 'video/quicktime', 'mov' => 'video/quicktime',
'lha' => 'application/x-lha', 'lzh' => 'application/x-lha', 'z' => 'application/x-compress', 'gtar' => 'application/x-gtar', 'gz' => 'application/x-gzip', 'gzip' => 'application/x-gzip', 'tgz' => 'application/x-gzip', 'tar' => 'application/x-tar', 'bz2' => 'application/bzip2', 'zip' => 'application/zip', 'arj' => 'application/x-arj', 'rar' => 'application/x-rar-compressed',
'hqx' => 'application/mac-binhex40', 'sit' => 'application/x-stuffit', 'bin' => 'application/x-macbinary',
'uu' => 'text/x-uuencode', 'uue' => 'text/x-uuencode',
'latex'=> 'application/x-latex', 'ltx' => 'application/x-latex', 'tcl' => 'application/x-tcl',
'pgp' => 'application/pgp', 'asc' => 'application/pgp', 'exe' => 'application/x-msdownload', 'doc' => 'application/msword', 'rtf' => 'application/rtf', 'xls' => 'application/vnd.ms-excel', 'ppt' => 'application/vnd.ms-powerpoint', 'mdb' => 'application/x-msaccess', 'wri' => 'application/x-mswrite', ); 5、php生成excel文档 <? header("content-type:application/vnd.ms-excel"); header("content-disposition:filename=test.xls"); echo "test1t"; echo "test2tn"; echo "test1t"; echo "test2tn"; echo "test1t"; echo "test2tn"; echo "test1t"; echo "test2tn"; echo "test1t"; echo "test2tn"; echo "test1t"; echo "test2tn"; ?> //改动相应文件头就可以输出.doc .xls等文件格式了
6、时间比较问题 举一个简单例子说明:比如一个论坛对当天发表的贴子用new图片标记一下。 方法一: //$db->rows[$i][date]中为数据库中datetime字段值. $today=time(); $theday=date("y-m-d h:i:s",$today-24*3600); $newtag=$db->rows[$i][date]>=$theday?"<img src='../image/newinfor.gif'>":"; 方法二: $newtag=$db->rows[$i][date]>=date("y-m-d 00:00:00")?"<img src='../image/newinfor.gif'>":"; 7、php中对数据库操作的封装 我的例子.........见本文附件! 相关附件:php中对数据库操作的封装的例子
|