京东云宙斯上传单张图片php,PHP图片上传程序(单张)

/******************************************************************************

参数说明:

$max_file_size : 上传文件大小限制, 单位BYTE

$destination_folder : 上传文件路径

$watermark : 是否附加水印(1为加水印,其他为不加水印);

使用说明:

1. 将PHP.INI文件里面的"extension=php_gd2.dll"一行前面的;号去掉,因为我们要用到GD库;

2. 将extension_dir =改为你的php_gd2.dll所在目录;

******************************************************************************/

//上传文件类型列表

$uptypes=array(

'p_w_picpath/jpg',

'p_w_picpath/jpeg',

'p_w_picpath/png',

'p_w_picpath/pjpeg',

'p_w_picpath/gif',

'p_w_picpath/bmp',

'p_w_picpath/x-png'

);

$max_file_size=2000000; //上传文件大小限制, 单位BYTE

$destination_folder="uploadimg/"; //上传文件路径

$watermark=1; //是否附加水印(1为加水印,其他为不加水印);

$watertype=1; //水印类型(1为文字,2为图片)

$waterposition=1; //水印位置(1为左下角,2为右下角,3为左上角,4为右上角,5为居中);

$waterstring="http://www.xplore.cn/"; //水印字符串

$waterimg="xplore.gif"; //水印图片

$imgpreview=1; //是否生成预览图(1为生成,其他为不生成);

$imgpreviewsize=1/2; //缩略图比例

?>

ZwelL图片上传程序

上传文件:

允许上传的文件类型为:=implode(', ',$uptypes)?>

if ($_SERVER['REQUEST_METHOD'] == 'POST')

{

if (!is_uploaded_file($_FILES["upfile"][tmp_name]))

//是否存在文件

{

echo "图片不存在!";

exit;

}

$file = $_FILES["upfile"];

if($max_file_size < $file["size"])

//检查文件大小

{

echo "文件太大!";

exit;

}

if(!in_array($file["type"], $uptypes))

//检查文件类型

{

echo "文件类型不符!".$file["type"];

exit;

}

if(!file_exists($destination_folder))

{

mkdir($destination_folder);

}

$filename=$file["tmp_name"];

$p_w_picpath_size = getp_w_picpathsize($filename);

$pinfo=pathinfo($file["name"]);

$ftype=$pinfo['extension'];

$destination = $destination_folder.time().".".$ftype;

if (file_exists($destination) && $overwrite != true)

{

echo "同名文件已经存在了";

exit;

}

if(!move_uploaded_file ($filename, $destination))

{

echo "移动文件出错";

exit;

}

$pinfo=pathinfo($destination);

$fname=$pinfo[basename];

echo " 已经成功上传
文件名: ".$destination_folder.$fname."
";

echo " 宽度:".$p_w_picpath_size[0];

echo " 长度:".$p_w_picpath_size[1];

echo "
大小:".$file["size"]." bytes";

if($watermark==1)

{

$iinfo=getp_w_picpathsize($destination,$iinfo);

$np_w_picpath=p_w_picpathcreatetruecolor($p_w_picpath_size[0],$p_w_picpath_size[1]);

$white=p_w_picpathcolorallocate($np_w_picpath,255,255,255);

$black=p_w_picpathcolorallocate($np_w_picpath,0,0,0);

$red=p_w_picpathcolorallocate($np_w_picpath,255,0,0);

p_w_picpathfill($np_w_picpath,0,0,$white);

switch ($iinfo[2])

{

case 1:

$sp_w_picpath =p_w_picpathcreatefromgif($destination);

break;

case 2:

$sp_w_picpath =p_w_picpathcreatefromjpeg($destination);

break;

case 3:

$sp_w_picpath =p_w_picpathcreatefrompng($destination);

break;

case 6:

$sp_w_picpath =p_w_picpathcreatefromwbmp($destination);

break;

default:

die("不支持的文件类型");

exit;

}

p_w_picpathcopy($np_w_picpath,$sp_w_picpath,0,0,0,0,$p_w_picpath_size[0],$p_w_picpath_size[1]);

p_w_picpathfilledrectangle($np_w_picpath,1,$p_w_picpath_size[1]-15,80,$p_w_picpath_size[1],$white);

switch($watertype)

{

case 1: //加水印字符串

p_w_picpathstring($np_w_picpath,2,3,$p_w_picpath_size[1]-15,$waterstring,$black);

break;

case 2: //加水印图片

$sp_w_picpath1 =p_w_picpathcreatefromgif("xplore.gif");

p_w_picpathcopy($np_w_picpath,$sp_w_picpath1,0,0,0,0,85,15);

p_w_picpathdestroy($sp_w_picpath1);

break;

}

switch ($iinfo[2])

{

case 1:

//p_w_picpathgif($np_w_picpath, $destination);

p_w_picpathjpeg($np_w_picpath, $destination);

break;

case 2:

p_w_picpathjpeg($np_w_picpath, $destination);

break;

case 3:

p_w_picpathpng($np_w_picpath, $destination);

break;

case 6:

p_w_picpathwbmp($np_w_picpath, $destination);

//p_w_picpathjpeg($np_w_picpath, $destination);

break;

}

//覆盖原上传文件

p_w_picpathdestroy($np_w_picpath);

p_w_picpathdestroy($sp_w_picpath);

}

if($imgpreview==1)

{

echo "
图片预览:
";

echo "\"图片预览:\r文件名:".$destination."\r上传时间:\"";

}

}

?>

从PHP100上搜刮来的,功能很强大。几乎考虑到了每个细节,与大家分享!~~~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值