最近刚刚完成手中的项目,比较闲。来这儿转转,把积累的一些技巧分享给大家! 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 "test1\t"; echo "test2\t\n"; echo "test1\t"; echo "test2\t\n"; echo "test1\t"; echo "test2\t\n"; echo "test1\t"; echo "test2\t\n"; echo "test1\t"; echo "test2\t\n"; echo "test1\t"; echo "test2\t\n"; ?> //改动相应文件头就可以输出.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中对数据库操作的封装的例子
|