代码如下:
<?php /** * php防止盗链 * by http://www. */ session_start(); if(!isset()($_SESSION['id'])or !isset($_SESSION['member'])){ echo "<mce:script type="text/javascript"><!-- alert('您没有登录或超时');history.back; // --></mce:script>";//验证session exit(); } $ref=$_SERVER['HTTP_REFERER']; if($ref==''){ echo '对不起,不允许从地址栏访问'; }else{ $url=parse_url(/blog_article/$ref/index.html); if($url[host]!='127.0.0.1'&& $url[host]!='localhost'){ echo '不允许盗链'; exit(); } } ?>
有关 "HTTP_REFERER" 的解释:
链接到当前页面的前一页面的 URL 地址。
不是所有的用户代理(浏览器)都会设置这个变量,而且有的还可以手工修改 HTTP_REFERER。因此,这个变量不总是真实正确的。
总结:
只有点击超链接(即<A href=/blog_article/...>)
打开的页面才有HTTP_REFERER环境变量,其它如 window.open()、 window.location=...、window.showModelessDialog()等打开的窗口都没有HTTP_REFERER 环境变量。
代码如下:
<?php /** * php 获取星期几的代码 * http://www. */ date("l"); //data就可以获取英文的星期比如Sunday date("w"); //这个可以获取数字星期比如123,注意0是星期日 //获取中文星期几: $weekarray=array("日","一","二","三","四","五","六"); //先定义一个数组 echo "星期".$weekarray[date("w")]; //获取指定日期是: $weekarray=array("日","一","二","三","四","五","六"); echo "星期".$weekarray[date("w","2011-11-11")]; ?>
附,date函数介绍。
a - "am" 或是 "pm"
A - "AM" 或是 "PM"
d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"
D - 星期几,三个英文字母; 如: "Fri"
F - 月份,英文全名; 如: "January"
h - 12 小时制的小时; 如: "01" 至 "12"
H - 24 小时制的小时; 如: "00" 至 "23"
g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"
G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"
i - 分钟; 如: "00" 至 "59"
j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"
l - 星期几,英文全名; 如: "Friday"
m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"
n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"
M - 月份,三个英文字母; 如: "Jan"
s - 秒; 如: "00" 至 "59"
S - 字尾加英文序数,二个英文字母; 如: "th","nd"
t - 指定月份的天数; 如: "28" 至 "31"
U - 总秒数
w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六)
Y - 年,四位数字; 如: "1999"
y - 年,二位数字; 如: "99"
z - 一年中的第几天; 如: "0" 至 "365"
代码如下:
<?php /** * php正则判断url 自动转换为超链接 * site: www. */ function autolink($foo) { $foo = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_/+.~#?&//=]+)', '<a href="/1/index.html" mce_href="/1/index.html" target=_blank rel=nofollow>/1</a>', $foo); if( strpos($foo, "http") === FALSE ){ $foo = eregi_replace('(www.[-a-zA-Z0-9@:%_/+.~#?&//=]+)', '<a href="http:///1" mce_href="http:///1" target=_blank rel=nofollow >/1</a>', $foo); }else{ $foo = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_/+.~#?&//=]+)', '/1<a href="http:///2" mce_href="http:///2" target=_blank rel=nofollow >/2</a>', $foo); } return $foo; } ?>