【IT168 服务器学院】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''>":"";