php å¤ä¸ªæ件ä¸ä¼ (ç»å¾çå æ°´å°å®ä¾)
程序员文章站
2022-03-26 19:57:54
...
php å¤ä¸ªæ件ä¸ä¼ (ç»å¾çå æ°´å°å®ä¾)
phpæç¨ å¤ä¸ªæ件ä¸ä¼ (ç»å¾çå æ°´å°å®ä¾)
php å¤ä¸ªæ件ä¸ä¼ (ç»å¾çå æ°´å°å®ä¾)
if($_post['sub']=="www")
{
$waterimg="water.png";
$ftype=array('image/jpg','image/jpeg','imgage/png','image/pjpeg','image/gif');//å 许ä¸ä¼ çæ件类å
$files=$_files['files'];
$fnum=count($files['name']); //åå¾ä¸ä¼ æ件个æ°
for($i=0;$i{
if($files['name'][$i]!=''&&is_uploaded_file($files['tmp_name'][$i]))
{
if(in_array($files['type'][$i],$ftype))//å¤ææ件æ¯å¦æ¯å 许çç±»å
{
$fname[$i]='upfile/'.rand(0,10000).time().substr($files['name'] [$i],strrpos($files['name'][$i],'.'));//èªå¨å½å
move_uploaded_file($files['tmp_name'][$i],$fname[$i]);
echo '
æ件ä¸ä¼ æåï¼';
}
else
{
echo '
ä¸å 许çæ件类åï¼';
exit;
}
}
else
{
echo '
该æ件ä¸åå¨ï¼';
exit;
}
watermark($fname[$i],$waterimg);
}
$string=implode('|',$fname);
echo $string;
}
?>
åä¸ä¼ ä¸å¼
/**
* 为å¾çå æ°´å°
* @param string $desimg ç®æ å¾ç åæ°æ ¼å¼ä¸º ./images/pic.jpg
* @param string $waterimg æ°´å°å¾ç åæ°æ ¼å¼åä¸ï¼æ°´å°å¾ç为 pngæ ¼å¼ï¼èæ¯éæ
* @param int positon æ°´å°å°ä½ 1ï¼é¡¶é¨å± å·¦ 2ï¼é¡¶é¨å± å³ 3ï¼å± ä¸ 4 ï¼åºé¨å± å·¦ 5ï¼åºé¨å± å³
* @param bool $saveas è½å¦å¦å为ï¼é»è®¸å¼false,é»ç¤ºç¬¼çåå¾
* @param int $alpha æ°´å°å¾ççä¸éæ度
* @return string $savepath æ°å¾ççéå¾
* **/
function watermark($desimg,$waterimg,$positon=1,$saveas=false,$alpha=30)
{
//è·åç®å¾ççæ ¹åºä¿¡æ¯
$temp=pathinfo($desimg);
$name=$temp["basename"];//æ件å
$path=$temp["dirname"];//æ件å°ç¹çæ件夹
$extension=$temp["extension"];//æ件æ©å±å
if($saveas)
{
//éè¦å¦å为
$name=rtrim($name,".$extension")."_2.";//ä»å¤´å½å
$savepath=$path."/".$name.$extension;
}
else
{
//ä¸éè¦å¦å为å笼çåå¾
$savepath=$path."/".$name;
}
$info=getimageinfo($desimg);//è·åç®æ å¾ççä¿¡æ¯
$info2=getimageinfo($waterimg);//è·åæ°´å°å¾ççä¿¡æ¯
$desimg=create($desimg);//ä»åå¾åç«
$waterimg=create($waterimg);//ä»æ°´å°å¾çåç«
//å°ä½1ï¼é¡¶é¨å± å·¦
if($positon==1)
{
$x=0;
$y=0;
}
//å°ä½2ï¼é¡¶é¨å± å³
if($positon==2)
{
$x=$info[0]-$info2[0];
$y=0;
}
//å°ä½3ï¼å± ä¸
if($positon==3)
{
$x=($info[0]-$info2[0])/2;
$y=($info[1]-$info2[1])/2;
}
//å°ä½4ï¼åºé¨å± å·¦
if($positon==4)
{
$x=0;
$y=$info[1]-$info2[1];
}
//å°ä½5ï¼åºé¨å± å³
if($positon==5)
{
$x=$info[0]-$info2[0];
$y=$info[1]-$info2[1];
}
imagecopymerge($desimg,$waterimg,$x,$y,0,0,$info2[0],$info2[1],$alpha);
imagejpeg($desimg,$savepath);
imagedestroy($desimg);
imagedestroy($waterimg);
return $savepath;
}
/**
* è·åå¾ççä¿¡æ¯ï¼width,height,image/type
* @param string $src å¾çéå¾
* @return æ°ç»
* **/
function getimageinfo($src)
{
return getimagesize($src);
}
/**
* åç«å¾çï¼åå¾æ¬é±èä¾
* @param string $src å¾çéå¾
* @return resource $im åå¾æ¬é±èä¾
* **/
function create($src)
{
$info=getimageinfo($src);
switch ($info[2])
{
case 1:
$im=imagecreatefromgif($src);
break;
case 2:
$im=imagecreatefromjpeg($src);
break;
case 3:
$im=imagecreatefrompng($src);
break;
}
return $im;
}
?>