PHP安全上传图片的方法


Posted in PHP onMarch 21, 2015

本文实例讲述了PHP安全上传图片的方法。分享给大家供大家参考。具体分析如下:

这段代码用于上传图片,可以根据图片类型检测图片是否安全,不是简单的检测扩展名

<?php // upload.php
echo <<<_END
<html><head><title>PHP Form Upload</title></head><body>
<form method='post' action='upload2.php' enctype='multipart/form-data'>
Select a JPG, GIF, PNG or TIF File:
<input type='file' name='filename' size='10' />
<input type='submit' value='Upload' /></form>
_END;
if ($_FILES)
{
$name = $_FILES['filename']['name'];
switch($_FILES['filename']['type'])
{
case 'image/jpeg': $ext = 'jpg'; break;
case 'image/gif': $ext = 'gif'; break;
case 'image/png': $ext = 'png'; break;
case 'image/tiff': $ext = 'tif'; break;
default: $ext = ''; break;
}
if ($ext)
{
$n = "image.$ext";
move_uploaded_file($_FILES['filename']['tmp_name'], $n);
echo "Uploaded image '$name' as '$n':<br />";
echo "<img src='$n' />";
}
else echo "'$name' is not an accepted image file";
}
else echo "No image has been uploaded";
echo "</body></html>";
?>

希望本文所述对大家的php程序设计有所帮助。

PHP 相关文章推荐
用文本文件制作留言板提示(下)
Oct 09 PHP
php上传、管理照片示例
Oct 09 PHP
PHP 中执行排序与 MySQL 中排序
Apr 21 PHP
php判断变量类型常用方法
Apr 24 PHP
php class中public,private,protected的区别以及实例分析
Jun 18 PHP
php数组使用规则分析
Feb 27 PHP
PHP的伪随机数与真随机数详解
May 27 PHP
PHP实现简单实用的验证码类
Jul 29 PHP
php获取当前月与上个月月初及月末时间戳的方法
Dec 05 PHP
PHP实现的字符串匹配算法示例【sunday算法】
Dec 19 PHP
PHP判断是否微信访问的方法示例
Mar 27 PHP
TP5多入口设置实例讲解
Dec 15 PHP
php中实现可以返回多个值的函数实例
Mar 21 #PHP
php输出指定时间以前时间格式的方法
Mar 21 #PHP
php中文繁体和简体相互转换的方法
Mar 21 #PHP
php使用NumberFormatter格式化货币的方法
Mar 21 #PHP
php自定义错误处理用法实例
Mar 20 #PHP
php内嵌函数用法实例
Mar 20 #PHP
codeigniter中view通过循环显示数组数据的方法
Mar 20 #PHP
You might like
四月新番又没了,《Re:从零开始的异世界生活》第二季延期至7月播出
2020/05/06 日漫
工厂模式在Zend Framework中应用介绍
2012/07/10 PHP
文字幻灯片
2006/06/26 Javascript
基于JQuery实现的图片自动进行缩放和裁剪处理
2014/01/31 Javascript
浅谈javascript中字符串String与数组Array
2014/12/31 Javascript
jQuery中last()方法用法实例
2015/01/06 Javascript
jquery获取及设置outerhtml的方法
2015/03/09 Javascript
javascript动态设置样式style实例分析
2015/05/13 Javascript
学习javascript文件加载优化
2016/02/19 Javascript
纯JS实现可拖拽表单的简单实例
2016/09/02 Javascript
Javascript实现数组中的元素上下移动
2017/04/28 Javascript
JavaScript for循环 if判断语句(学习笔记)
2017/10/11 Javascript
简单易扩展可控性强的Jquery转盘抽奖程序
2019/03/16 jQuery
vue操作动画的记录animate.css实例代码
2019/04/26 Javascript
Vue项目中使用jsonp抓取跨域数据的方法
2019/11/10 Javascript
[02:37]TI8勇士令状不朽珍藏II视频展示
2018/06/23 DOTA
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
Python3字符串学习教程
2015/08/20 Python
Python自动化运维之IP地址处理模块详解
2017/12/10 Python
python+selenium识别验证码并登录的示例代码
2017/12/21 Python
python实现隐马尔科夫模型HMM
2018/03/25 Python
python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
2019/07/06 Python
Django2 连接MySQL及model测试实例分析
2019/12/10 Python
Biblibili视频投稿接口分析并以Python实现自动投稿功能
2021/02/05 Python
利用纯html5绘制出来的一款非常漂亮的时钟
2015/01/04 HTML / CSS
HTML5+CSS3绘制锯齿状的矩形
2016/03/01 HTML / CSS
Html5 web本地存储实例详解
2016/07/28 HTML / CSS
L’urv官网:精品女性运动服品牌
2019/07/07 全球购物
大学生校园创业计划书
2014/02/08 职场文书
学生会部长竞聘书
2014/03/31 职场文书
会计专业自荐信
2014/06/03 职场文书
分公司负责人任命书
2014/06/04 职场文书
归元寺导游词
2015/02/06 职场文书
鸡毛信观后感
2015/06/11 职场文书
SQL Server中交叉联接的用法详解
2021/04/22 SQL Server
Redis实现一个账号只能登录一个设备
2022/04/19 Redis