php常用函数

转载 http://hi.baidu.com/jiang4773300/blog/item/ba1ddd3f90d3a0f3838b13d2.html
<?php
/*
isemail
id_check
post_check
get_check
gbsubstr
msg
redirect
upindexpic
uploadfile
createstaticpage
*/
function isemail($email)
{//判断email
if($email!="")
{
if(!eregi("[0-9a-zA-Z_]@[0-9a-zA-Z_]{2,20}.[0-9a-zA-Z_]{2,3}",$email))
{
return false;
}
else
{
return true;
}
}
else
{
return false;
}
}


/*
函数名称:inject_check()
函数作用:检测提交的值是不是含有SQL注射的字符,防止注射,保护服务器安全
参 数:$sql_str: 提交的变量
返 回 值:返回检测结果,ture or false
*/
function inject_check($sql_str)
{
return eregi('select|insert|update|delete|\'|\/\*|\*|\.\.\/|\.\/|union|into|load_file|outfile', $sql_str); // 进行过滤
}
/*
函数名称:verify_id()
函数作用:校验提交的ID类值是否合法
参 数:$id: 提交的ID值
返 回 值:返回处理后的ID
*/

function id_check($id=null)
{
if (!$id) { exit('没有提交参数!'); } // 是否为空判断
elseif (inject_check($id)) { exit('提交的参数非法!'); } // 注射判断
elseif (!is_numeric($id)) { exit('提交的参数非法!'); } // 数字判断
$id = intval($id); // 整型化

return $id;
}
/*
函数名称:str_check()
函数作用:对提交的字符串进行过滤
参 数:$var: 要处理的字符串
返 回 值:返回过滤后的字符串
*/
function get_check($str)
{
if (!get_magic_quotes_gpc())
{ // 判断magic_quotes_gpc是否打开
$str = addslashes($str); // 进行过滤
}elseif(inject_check($id)){
exit('提交的参数非法!');
}
$str = str_replace("_", "\_", $str); // 把 '_'过滤掉
$str = str_replace("%", "\%", $str); // 把' % '过滤掉

return $str;
}
/*
函数名称:post_check()
函数作用:对提交的编辑内容进行处理
参 数:$post: 要提交的内容
返 回 值:$post: 返回过滤后的内容
*/
function post_check($post)
{
if (!get_magic_quotes_gpc()) // 判断magic_quotes_gpc是否为打开
{
$post = addslashes($post); // 进行magic_quotes_gpc没有打开的情况对提交数据的过滤
}
$post = str_replace("_", "\_", $post); // 把 '_'过滤掉
$post = str_replace("%", "\%", $post); // 把' % '过滤掉
$post = nl2br($post); // 回车转换
$post = htmlspecialchars($post); // html标记转换

return $post;
}


function gbsubstr($str,$strlen=24,$other=true)
{#中文字符截取 $other=true时在后面加省略号
$j = 0;

for($i=0;$i<$strlen;$i++)
{
if(ord(substr($str,$i,1))>0xa0)
$j++;
}

if($j%2!=0)
$strlen--;

$rstr=substr($str,0,$strlen);

if (strlen($str)>$strlen && $other)
$rstr.='...';

return $rstr;
}

#$url_this = "http://".$_SERVER ['HTTP_HOST'].$_SERVER['PHP_SELF'];//得到当前页面地址
#<a href="javascript:history.back(-1)">返回上一页</a>
#<a href=javascript:if(confirm('确定要删除吗?'))location="list_RecomPub.php">删除</a>

function msg($msg,$page) //弹出对话框,输出消息
{
echo "<SCRIPT language = JavaScript>alert(\"".$msg."\");history.go(".$page.");location.replace(document.referrer);</SCRIPT>";
exit;
}

function redirect($url,$text="") //重定向
{
//echo "<p>$text</p>";
echo "<SCRIPT language = JavaScript>alert(\"".$text."\");</SCRIPT>";
echo "<meta http-equiv=\"refresh\" content=\"0;URL=$url\">";
}

function revise($srcFile,$dstFile,$SizePicX,$SizePicY)
{#修正上传的图片大小
#$srcFile:源文件路径及文件名
#$dstFile:目标文件路径及文件名

#$srcX:源图片宽度
#$srcY:源图片高度

#$dstX:目标图片宽度
#$dstY:目标图片高度

#使用方法:
#revise($srcFile,$dstFile,$SizePicSmallX,$SizePicSmallY)

$data=getimagesize($srcFile);

switch($data[2]){
case 1:
$im=@imagecreatefromgif($srcFile);
break;
case 2:
$im=@imagecreatefromjpeg($srcFile);
break;
case 3:
$im=@imagecreatefrompng($srcFile);
break;
default :
break;
}

$srcX = imagesx($im);
$srcY = imagesy($im);
$dstY = $SizePicX;
$dstX = $SizePicY;

$ni = imagecreatetruecolor($dstX,$dstY);
$black = imagecolorallocate($ni,255,255,255);
imagefilledrectangle($ni,0,0,$dstX,$dstY,$black);
imagecopyresized($ni,$im,0,0,0,0,$dstX,$dstY,$srcX,$srcY);
imagegif($ni,$dstFile);

}

function upindexpic($SizePicX=120,$SizePicY=90)
{#修改yangs的程序,添加生成首页各栏目缩略图,使用本函数时,请确保$url的独一性,不好意思,开始写的时候没考虑url的广泛
global $url;

$urlPicType=$_FILES['url']['type'];
$filename=md5(uniqid(microtime(),1));
$type = array ("image/gif",
"image/pjpeg",
);
if(!in_array($urlPicType,$type))
{
die("请上传正确格式的图片");//没有正确的输出信息.
}
if($urlPicType=="image/gif")
{
$urlPicType=".gif";
}
elseif($urlPicType=="image/pjpeg")
{
$urlPicType=".jpg";
}
$url="../indexPic/".$filename.$urlPicType;
if(!copy($_FILES['url']['tmp_name'],$url))
{
die("上传图片失败");
}

revise($url,$url,$SizePicX,$SizePicY);

$url = str_replace("../", "", $url);
}

/*文件上传
使用方法:
$tmp_name = $_FILES['userfile']['tmp_name'][0];
$name = $_FILES['userfile']['name'][0];
$dir = '../upload';
uploadFile($tmp_name,$name,$dir)
返回值为文件的路径
*/
function uploadfile($tmp_name,$name,$dir)
if(!is_uploaded_file($tmp_name)){//$tmp_name=$_FILES['userfile']['tmp_name'][0]
msg("非法操作",-1);
}elseif($_FILES['file']['size'][0]>10240000){
msg("您上传的资料大于10MB",-1);
exit;
}
$filename = $name; // $name=$_FILES['userfile']['name'][0]
$extendname = explode(".",$filename);//------------------取得扩展名
$extendname = $name_pic[count($name_pic)-1];

$filetype= array("jpg","gif","png","bmp","swf","doc","xsl","txt");
if(!in_array($extendname,$filetype)){
msg("不允许上传此类文件1",-1);
}else{
$randval = date("Ymd").rand();
$fileurl = $dir.$randval.".".$extendname;
move_uploaded_file($_FILES['userfile']['tmp_name'][0], $fileurl);
return $fileurl;
}

function createstaticpage($sourcePage,$objectPage)#来源文件,目标文件
{
global $db;

ob_start(); #打开缓冲区

include $sourcePage; #在缓冲区中释放页面

$cons=ob_get_contents(); #得到缓冲区中的内容

ob_end_clean(); #清除缓冲区的内容

$fp=fopen($objectPage,"w+") or die("静态生成时打开文件".$objectPage."时出错");

fwrite($fp,$cons);

fclose($fp);

return true;
}
?>
发布了40 篇原创文章 · 获赞 0 · 访问量 4382
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章