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