1.HTTP协议(简单理解)
(1)概念类比:交通规则、寄送快递 基本内容包含两个方面: ①消息格式(快递怎么包装、填什么信息) ②如何处理消息(消息如何发送,快递到了怎么通知,无法送达?快递丢失?) (2)浏览器F12 查看消息:三部分: ①请求行:请求的摘要信息 ②请求头:类比于快递单,和客户端有关的信息 ③请求主体:请求内容(快递物品)
2.上传文件的客户端(表单)
(1)提交方式:POST (2)enctype属性:multipart/form-data 作用:告知表单中的元素不仅是字符串,还有文件类型。
<form action="#" method="post" enctype="multipart/form-data">
(3)
<input type="file" name"pic" />
3.服务器端的处理
(1)文件上传到服务器的什么位置?
C:\Windows\Temp 也可以更改php.ini中的upload_tmp_dir配置项
(2)获取文件的基本信息?
上传成功了吗?大小合适吗?类型合适吗?…… 通过$_FILES获取上传文件的信息。 $_FILES的详细信息:
(3)文件保存
4.利用GD库画图
(1)开启GD库
php.ini文件中的extension=gd2配置项
(2)制作缩略图的具体步骤
①获取原始图像大小: getimagesize($save_path)
②计算缩略图大小 ③创建画布 缩略图画布:
$thumb=imagecreatetruecolor($newwidth, $newheight);
原图画布:
$source=imagecreatefromjpeg($save_path);
④生成缩略图:imagecopyresized()
(3)完善GD库画图
具体步骤: ①创建画布(图像资源):常用imagecreatetruecolor (int $width, int $height ); ②设置填充颜色:
$color=imagecolorallocate($img,$r,$g,$b);
(4)具体画图
①填充颜色:imagefill($img,$x,$y,$color) ②绘制文本:imagettftext(……) ③绘制基本图形:点/线/矩形/圆形……
(5)保存/输出图像
①直接保存文件:imagegif(
i
m
g
,
img,
img,path); ②直接输出:imagegif($img);
|