宿迁腾云网络网站建设公司

腾云网络 八年经验专注网站建设
  • 首页
  • 服务项目
    • 网站建设
    • 微信小程序
    • APP开发
    • SEO优化
  • 建站费用
  • 成功案例
    • 网站建设案例
    • 小程序案例
    • APP开发案例
    • SEO优化案例
  • 行业动态
    • 网站建设
    • SEO优化
    • 技术日志
  • 联系我们
    • 关于我们
首页 > 行业动态 > 技术日志 > php文件上传代码 PHP4.3.10和PHP5.0.3的判断错误代号及判断的区别

php文件上传代码 PHP4.3.10和PHP5.0.3的判断错误代号及判断的区别

2021-10-16

首页

需要表格

, 一定有

method="post" enctype="multipart/form-data"

两者缺一不可,然后在表单中传递

 

传输文件。

接收页面

通过$['']接收(返回的是一个数组,进行相应的分配得到相应的值)

$a = $_FILES['myFile'];
$filename = $a['name'];
$type = $a['type'];
$tmp_name = $a['tmp_name'];
$error = $a['error'];
$size = $a['size'];

按照相应的顺序判断。1. 判断$错误代码英文代码内容

值为0,没有错误发生,文件上传成功。

1

它的值为1,上传的文件超过了php.ini中 的值。

2

值为2,上传文件的大小超过HTML表单中选项指定的值。

3

值为3,只上传文件的一部分。

4

电阻

它的值为 4,没有文件上传。

6

电阻

值为 6,找不到临时文件夹。引入了 PHP 4.3.10 和 PHP 5.0.3。

7

乙

其值为7,文件写入失败。PHP 5.1.0 引入。

8

值为8,由于PHP扩展文件上传失败

2.使用($)函数判断是否通过POST上传3.可以使用($,)函数获取上传文件的后缀类型4.可以使用md5(((true), true)) 生成唯一标识的文件名,加上3.的后缀构成保存的文件名。5.这两个代码可以生成你要存放的文件夹,在文件夹不存在时使用(判断文件夹不存在的代码($))

mkdir("uploads",0777,true);
chmod("uploads",0777);

6.($, $) 这段代码是将临时文件移动到指定文件夹并保存。$的内容为指定文件夹+文件名+。后缀。保存的 $ 是从文件传输的临时文件。文件上传代码包

function uploadMonoFile($a)
{
    $filename = $a['name'];
    @$type = $a['type'];
    $tmp_name = $a['tmp_name'];
    $error = $a['error'];
    @$size = $a['size'];
    $allowExt = array("gif", "jpeg", "jpg", "png", "wbmp");
    $maxSize = 1048576;
    //对上传文件判断是否成功还是出错
    if ($error == UPLOAD_ERR_OK) {
        $postfix = pathinfo($filename, PATHINFO_EXTENSION);
        //限制文件上传类型
        if (!in_array($postfix, $allowExt)) {
            exit("非法文件类型");
        }
        //限制文件上传大小
        if ($size > $maxSize) {
            exit("文件过大");
        }
        //是否是用POST的方式判断
        if (is_uploaded_file($tmp_name)) {
        //获得唯一的文件名,getUniName()是封装的一个方法--md5加密的
            $filename = getUniName($filename);
            $destination = "uploads/";
            //判断文件夹是否存在
            if (!file_exists($destination)) {
                mkdir("uploads", 0777, true);
                chmod("uploads", 0777);
            }
            $destination = "uploads/" . $filename . "." . $postfix;
                //将临时文件进行存储到指定文件夹
            if (move_uploaded_file($tmp_name, $destination)) {
                $mes = "文件上传成功";
            } else {
                $mes = "文件上传失败";
            }
        } else {
            $mes = "文件不是通过post方式上传的";
        }
        return $mes;
    } else {
        switch ($error) {
            case 1:
                $mes = "超过配置文件的大小";
                break;
            case 2:
                $mes = "超过表单限制的大小";
                break;
            case 3:
                $mes = "文件部分被上传";
                break;
            case 4:
                $mes = "没有文件被上传";
                break;
            case 6:
                $mes = "没有找到临时目录";
                break;
            case 7:
                $mes = "文件不可写";
                break;
            case 8:
                $mes = "由于PHP的扩展程序导致文件上传失败";
                break;
        }
    }
    return $mes;
}

多文件上传代码包

多文件上传是根据name传递的参数是数组还是多个不同的文件参数

无论上传多个不同的文件参数或数组参数,接受的参数都会包含在同一个数组中。

区分两个不同数组的关键是找到差异。在数组参数中,文件的数据统一分配在同一个数组中,对于单个文件上传php文件上传代码,文件的所有数据都分配在一个数组中。.

从上一点可以看出,文件上传名称是一个数组参数,是一个二维数组,多个单个文件上传是一个一维数组。所以判断文件名['name']是字符串还是数组。极客判断是按数组上传还是单个文件上传。步骤:将接收到的参数 $a 遍历到单个数组 $a_sm 中。判断数组中的某个值是字符串还是数组,这里判断文件名['name']。如果是字符串,则确定为单文件上传,如果是数组,则确定为多文件上传。['name']为字符串" "单文件上传判断['']是否为yesphp文件上传代码,文件是否上传成功。然后使用之前封装的函数对文件进行相应的处理。['姓名'

这两个是判断成功和失败的次数,忽略空文件。代码并不完美

$success_num=0;
$fail_num=0;

function uploadMultiFile($a)
{
    $success_num=0;
    $fail_num=0;
    foreach ($a as $a_sm) {
        if (is_string($a_sm['name'])) {
            if ($a_sm['error'] == UPLOAD_ERR_OK) {
                $res = uploadMonoFile($a_sm);
                if ($res=="文件上传成功"){
                    $success_num++;
                }
            } elseif ($a_sm['error'] != 4) {
                echo "文件出错";
            }
        } else {
            $i = 0;
            foreach ($a_sm as $key => $value) {
                $files[$i]['name'] = $a_sm['name'][$i];
                $files[$i]['tmp_name'] = $a_sm['tmp_name'][$i];
                $files[$i]['error'] = $a_sm['error'][$i];
                $i++;
            }
            foreach ($files as $file) {
                $res = uploadMonoFile($file);
                if ($res=="文件上传成功") {
                    $success_num++;
                }
            }
        }
    }
    return $success_num."个文件上传成功".",有".$fail_num."个上传失败。";
}

Tag: 文件上传 php数组函数 php
网站制作公众号

宿迁腾云网络网站建设公司 | 网站开发 | 网站制作 | 网站优化

咨询电话:13160355545

上一篇

返回栏目

下一篇

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

热推

  • php刷新当前网页的代码使用教程_谷歌管理员工具用法谷歌搜索控制台、谷歌站长工具网页自动刷新 代码
  • 微信公众平台php开发 微信团队宣布公众平台将新增素材管理接口(图) 微信公众平台开发教程 php
  • 国内做php的用什么框架PHP培训3.0体系以人为本达内PHP学员达内企业PHP 国内php框架使用排行
  • php网站搭建广告ae氩教程每天免费网上学习ae教程(组图)php网站搭建教程pdf
  • php高级程序设计 模式 框架与测试 英特尔开源工具加速面向异构架构的跨架构编程(图)php高级程序设计模式,框架与测试
  • 什么时候需要使用PHP代码美化:代码的格式化与美化
  • 基于N识别算法的核验场景应用场景迈向发展(组图)
  • norepad++如何编写php代码名为PHP的iPad应用不但赋予iPad写代码的能力,能让它离线运行PHP代码php精粹:编写高效php代码
  • PHP thinkphp5 + layui 实现四级联动
  • php框架源码分析 模型中获取数据,再将获取到的数据通过显示出来php视频框架源码

相关

了解常见PHP应用程序安全威胁,掌握6个常见安全性攻击

了解常见PHP应用程序安全威胁,掌握6个常见安全性攻击

如何查看php版本?多种方法助你快速知晓

如何查看php版本?多种方法助你快速知晓

PHP格式化:提升代码质量与协作效率的关键规则

如何查看虚拟主机上的 PHP 版本?这篇文章告诉你

Linux 系统管理员和 web 开发者必知:如何查看 PH

Linux 系统管理员和 web 开发者必知:如何查看 PH

免费开源的轻量级 PHP 开发框架 ThinkPHP,遵循

从零开始开发完整网站:前端、后端与 Web 服务器的关键技术

php框架 Java 与 PHP 之争:为何懂技术的大佬选

BitDefender 发布超级工厂病毒专杀工具,可清除所有

asp语言与php语言的区别 前端和后端的区别,你真的了解吗

标签

seo(1182) 市场营销(661) 网站制作(573) 网站建设(564) 搜索引擎(553) 网站(482) PHP(361) 编程语言(345) 建站(294) 关键词排名优化(267) 网站建设公司(245) 优化(216) seo排名(207) 域名(190) 软件(171) 网站优化(148) 搜索引擎优化(146) 外链(141) 科技(136) 网站关键词(124) 网站排名优化(123) 域名服务器(120) 网站排名(107) 时政(103) 排名优化(95) 搜索引擎收录(93) 网站设计(92) 电子商务(88) 引擎(86) 移动互联网(85) 开发框架(79) 开发(75) 网站服务器(74) 框架(68) 前端开发(68) 网站分析(66) 网站建设方案(65) 关键(64) 流量(63) 源码(62) 百度优化(62) 网站权重(61) 开放源代码(59) seo培训(53) 网页设计(51) 百度(51) php框架(50) 网站建设知识(50) 大数据(50) 谷歌(49)
宿迁腾云网络网站建设公司
网站建设
  • 私人定制
  • 标准模板建站
  • 经济模板建站
精品模板

宿迁腾云网络网站建设公司

联系电话:13160355545

公司地址:江苏省宿迁市丽景湾华庭北门都市花园公寓9楼907

联系邮箱:admin@tyweb.net

全国分站
  • 北京
  • 广东
  • 东莞 广州 中山 深圳 惠州 江门 珠海 汕头 佛山 湛江 河源 肇庆 潮州 清远 韶关 揭阳 阳江 云浮 茂名 梅州 汕尾
  • 山东
  • 济南 青岛 临沂 济宁 菏泽 烟台 泰安 淄博 潍坊 日照 威海 滨州 东营 聊城 德州 莱芜 枣庄
  • 江苏
  • 苏州 徐州 盐城 无锡 南京 南通 连云港 常州 扬州 镇江 淮安 泰州 宿迁
  • 河南
  • 郑州 南阳 新乡 安阳 洛阳 信阳 平顶山 周口 商丘 开封 焦作 驻马店 濮阳 三门峡 漯河 许昌 鹤壁 济源
  • 上海
  • 河北
  • 石家庄 唐山 保定 邯郸 邢台 沧州 秦皇岛 张家口 衡水 廊坊 承德
  • 浙江
  • 温州 宁波 杭州 台州 嘉兴 金华 湖州 绍兴 舟山 丽水 衢州
  • 陕西
  • 西安 咸阳 宝鸡 汉中 渭南 安康 榆林 商洛 延安 铜川
  • 湖南
  • 长沙 邵阳 常德 衡阳 株洲 湘潭 永州 岳阳 怀化 郴州 娄底 益阳 张家界 湘西
  • 重庆
  • 福建
  • 漳州 泉州 厦门 福州 莆田 宁德 三明 南平 龙岩
  • 天津
  • 云南
  • 昆明 红河 大理 文山 德宏 曲靖 昭通 楚雄 保山 玉溪 丽江 临沧 思茅 西双版纳 怒江 迪庆
  • 四川
  • 成都 绵阳 广元 达州 南充 德阳 广安 阿坝 巴中 遂宁 内江 凉山 攀枝花 乐山 自贡 泸州 雅安 宜宾 资阳 眉山 甘孜
  • 广西
  • 贵港 玉林 北海 南宁 柳州 桂林 梧州 钦州 来宾 河池 百色 贺州 崇左 防城港
  • 安徽
  • 芜湖 合肥 六安 宿州 阜阳 安庆 马鞍山 蚌埠 淮北 淮南 宣城 黄山 铜陵 亳州 池州 巢湖 滁州
  • 海南
  • 三亚 海口 琼海 文昌 东方
  • 江西
  • 南昌 赣州 上饶 吉安 九江 新余 抚州 宜春 景德镇 萍乡 鹰潭
  • 湖北
  • 武汉 宜昌 襄樊 荆州 恩施 孝感 黄冈 十堰 咸宁 黄石 仙桃 随州 天门 荆门 潜江 鄂州 神农架
  • 山西
  • 太原 大同 运城 长治 晋城 忻州 临汾 吕梁 晋中 阳泉 朔州
  • 辽宁
  • 大连 沈阳 丹东 辽阳 葫芦岛 锦州 朝阳 营口 鞍山 抚顺 阜新 本溪 盘锦 铁岭
  • 黑龙江
  • 齐齐哈尔 哈尔滨 大庆 佳木斯 双鸭山 牡丹江 鸡西 黑河 绥化 鹤岗 伊春 大兴安岭 七台河
  • 内蒙古
  • 赤峰 包头 通辽 呼和浩特 乌海 鄂尔多斯 呼伦贝尔
  • 贵州
  • 贵阳 黔东 黔南 遵义 黔西 毕节 铜仁 安顺 六盘水
  • 甘肃
  • 兰州 天水 庆阳 武威 酒泉 张掖 陇南 白银 定西 平凉 嘉峪关 临夏 金昌 甘南
  • 青海
  • 西宁 海西 海东 海北 果洛 玉树 黄南
  • 新疆
  • 乌鲁木齐 伊犁 昌吉 石河子 哈密
  • 西藏
  • 拉萨 山南 林芝 日喀则
  • 吉林
  • 长春 白山 白城 延边 松原 辽源 通化 四平
  • 宁夏
  • 银川 吴忠 中卫 石嘴山 固原
SiteMap
网站地图
TAG标签
Copyright © 2017-2025 TYWEB.NET 宿迁腾云网络科技有限公司 ALL RIGHTS RESERVED.   苏ICP备17033535号-1

热门搜索

百度 下载 2025 2024 2026 货源 货货源 虚拟 禅道 报名 金蝶KIS旗舰版
  • 客服

    在线客服

  • 电话

    13160355545

  • 微信

精品模板
建站费用
成功案例
联系我们