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 相关文章推荐
PHP利用COM对象访问SQLServer、Access
Oct 09 PHP
PHP实时显示输出
Oct 02 PHP
一个基于PDO的数据库操作类
Mar 24 PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
Jul 01 PHP
使用phpQuery采集网页的方法
Nov 13 PHP
php快速排序原理与实现方法分析
May 26 PHP
PHP实现根据密码长度显示安全条
Jul 04 PHP
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
Jan 15 PHP
PHP实现分布式memcache设置web集群session同步的方法
Apr 10 PHP
CentOS7编译安装php7.1的教程详解
Apr 18 PHP
PHP递归统计系统中代码行数
Sep 19 PHP
详解PHP Swoole与TCP三次握手
May 27 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
PHP 变量的定义方法
2010/01/26 PHP
JavaScript与HTML结合的基本使用方法整理
2015/10/12 PHP
PHP实现redis限制单ip、单用户的访问次数功能示例
2018/06/16 PHP
关于js遍历表格的实例
2013/07/10 Javascript
jQuery Animation实现CSS3动画示例介绍
2013/08/14 Javascript
你未必知道的JavaScript和CSS交互的5种方法
2014/04/02 Javascript
jquery append 动态添加的元素事件on 不起作用的解决方案
2015/07/30 Javascript
JS实现slide文字框缩放伸展效果代码
2015/11/05 Javascript
jQuery判断元素是否显示 是否隐藏的简单实现代码
2016/05/19 Javascript
js获取iframe中的window对象的实现方法
2016/05/20 Javascript
javascript 广告移动特效的实现代码
2016/06/25 Javascript
JS 在数组指定位置插入/删除数据的方法
2017/01/12 Javascript
写jQuery插件时的注意点
2017/02/20 Javascript
在原生不支持的旧环境中添加兼容的Object.keys实现方法
2017/09/11 Javascript
vue2.0 实现导航守卫的具体用法(路由守卫)
2018/05/17 Javascript
vue template中slot-scope/scope的使用方法
2018/09/06 Javascript
JS使用setInterval计时器实现挑战10秒
2020/11/08 Javascript
用Python展示动态规则法用以解决重叠子问题的示例
2015/04/02 Python
在Python中使用HTMLParser解析HTML的教程
2015/04/29 Python
python网络编程之数据传输UDP实例分析
2015/05/20 Python
python探索之BaseHTTPServer-实现Web服务器介绍
2017/10/28 Python
python脚本生成caffe train_list.txt的方法
2018/04/27 Python
python去掉 unicode 字符串前面的u方法
2018/10/21 Python
Python实例方法、类方法、静态方法的区别与作用详解
2019/03/25 Python
8种用Python实现线性回归的方法对比详解
2019/07/10 Python
pygame库实现俄罗斯方块小游戏
2019/10/29 Python
python selenium 执行完毕关闭chromedriver进程示例
2019/11/15 Python
使用opencv将视频帧转成图片输出
2019/12/10 Python
Python实现对word文档添加密码去除密码的示例代码
2020/12/29 Python
《藤野先生》教学反思
2014/02/19 职场文书
市场部业务员岗位职责
2014/04/02 职场文书
医院护士见习期自我鉴定
2014/09/15 职场文书
2014年自愿离婚协议书范本
2014/09/25 职场文书
2014年团工作总结
2014/11/27 职场文书
男方婚礼答谢词
2015/01/20 职场文书
python glom模块的使用简介
2021/04/13 Python