热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

php封装类实现的图片上传可直接引用

<?phpclassimage{/***完成图片的上传**@paramarray$file待上传的文件信息的数组,用于5个元素的那个数组*@returnmixed如果执行成功,php封装类实现的图片上传可直接引用,返回上传了的文件名,否则返回false
class image {

    /**
     *完成图片的上传
     *
     *@param array $file 待上传的文件信息的数组,用于5个元素的那个数组
     *@return mixed 如果执行成功,返回上传了的文件名,否则返回false
     */
    public function upload($file) {

        if($file['error'] == 0) {
            $allow_types = array('image/jpeg', 'image/pjpeg', 'image/png', 'image/gif');
            if(in_array($file['type'], $allow_types)) {
                $maxsize = 2000000;
                if($file['size'] <= $maxsize) {
                    //上传
                    //需要将文件重命名,1,防止不规则的字符出现在文件名中,2,防止重名
                    //采用时间戳加随机数的形式
                    //后缀名如何获得?在原始文件名中获得后缀名
                    //在文件名中最后一个点截取到最后就是扩展名
                    //strrchr(在哪个字符串中查,查的字符串);
                    $new_filename = time() . mt_rand(10000, 99999) . strrchr($file['name'], '.');

                    //移动
                    //此函数返回移动成功还是失败
                    if(move_uploaded_file($file['tmp_name'],'images/'. $new_filename)) {
                        return $new_filename;
                    }
                }
            }
        }

        //只有一种情况返回文件名,其他全部返回false
        return false;
    }
}
?>

//-------------------------------------------------------------------------------------
header("content-type:text/html;charset=utf-8");
function __autoload($image){
        require_once($image.'.class.php');
}

    $image = new image();
    $user = $_POST['user'];
    $img = $_FILES['img'];
    //var_dump($img);
    $img = $image ->upload($img);
    mysql_connect('localhost','root','123');
    mysql_select_db('lyb');
    mysql_query('set names utf8');
    $q = "insert test_image(name,url) values('$user','$img')";
    //var_dump($q);
    $result = mysql_query($q);
                if($result){
                
                   echo "添加成功.....

";
                 }
                 else{
                   echo "添加失败。。。";
                 }
?>

//--------------------------------------------------------------------------------------









姓名:

图片:





推荐阅读
  • 本文详细介绍了优化DB2数据库性能的多种方法,涵盖统计信息更新、缓冲池调整、日志缓冲区配置、应用程序堆大小设置、排序堆参数调整、代理程序管理、锁机制优化、活动应用程序限制、页清除程序配置、I/O服务器数量设定以及编入组提交数调整等方面。通过这些技术手段,可以显著提升数据库的运行效率和响应速度。 ... [详细]
  • 利用Selenium与ChromeDriver实现豆瓣网页全屏截图
    本文介绍了一种使用Selenium和ChromeDriver结合Python代码,轻松实现对豆瓣网站进行完整页面截图的方法。该方法不仅简单易行,而且解决了新版Selenium不再支持PhantomJS的问题。 ... [详细]
  • 解决TensorFlow CPU版本安装中的依赖问题
    本文记录了在安装CPU版本的TensorFlow过程中遇到的依赖问题及解决方案,特别是numpy版本不匹配和动态链接库(DLL)错误。通过详细的步骤说明和专业建议,帮助读者顺利安装并使用TensorFlow。 ... [详细]
  • 本文详细介绍了在XAMPP环境中如何修改Apache和MySQL的默认端口号,并确保WordPress能够正常访问。同时,提供了针对Go语言社区和Golang开发者的相关建议。 ... [详细]
  • 澄清对 IN 语句索引使用常见误解
    本文旨在纠正关于 MySQL 中 IN 语句是否使用索引的常见误解。许多人认为 IN 语句的索引使用与字符串长度有关,实际上,影响因素更为复杂,包括数据分布和 MySQL 版本等因素。 ... [详细]
  • PHP 实现多级树形结构:构建无限层级分类系统
    在众多管理系统中,如菜单、分类和部门等模块,通常需要处理层级结构。为了高效管理和展示这些层级数据,本文将介绍如何使用 PHP 实现多级树形结构,并提供代码示例以帮助开发者轻松实现无限分级。 ... [详细]
  • This article explains how to check if a given string consists solely of English characters, including letters and numbers. It provides a practical PHP function for this purpose. ... [详细]
  • 工作后体重逐渐增加,尽管尚未达到令人担忧的程度,但对于热爱运动的人来说,这一变化难以接受。经过长时间的考虑,我决定重新制定减重计划,以恢复最佳的身体状态。 ... [详细]
  • 本文探讨如何配置 Nginx 以将传入请求反向代理到运行在本地绑定端口上的 Docker 容器,并解决常见的路径重定向问题。 ... [详细]
  • 12月16日JavaScript变量、函数、流程、循环等***线上九期班
    12月16日JavaScript变量、函数、流程、循环等***线上九期班 ... [详细]
  • 卫青与汉武帝的君臣关系及家族命运
    本文探讨了卫青与汉武帝之间的特殊关系,以及卫青去世后其家族的命运。卫青不仅是汉武帝的重要将领,还通过婚姻关系成为皇亲国戚。然而,卫青去世后,其家族并未立即遭到灭顶之灾,而是逐渐因政治风波受到牵连。 ... [详细]
  • 如何在AE中创建裂变式加载动画
    本文将详细介绍如何使用Adobe After Effects (AE) 制作一个裂变式加载动画。通过简单的步骤,您可以轻松创建出引人注目的转圈式加载效果。 ... [详细]
  • 本文详细介绍了如何在PHP中进行数组删除、清空等操作,并提供了在Visual Studio Code中创建PHP文件的步骤。 ... [详细]
  • 探索新一代API文档工具,告别Swagger的繁琐
    对于后端开发者而言,编写和维护API文档既繁琐又不可或缺。本文将介绍一款全新的API文档工具,帮助团队更高效地协作,简化API文档生成流程。 ... [详细]
  • 实现自定义组件的多值v-model双向绑定
    探讨如何在自定义组件中实现多个输入框与父组件数据的动态双向绑定,确保组件内部多个值的变化能实时反映到父组件的数据中。 ... [详细]
author-avatar
yuhemecy_883
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有