php中上传文件的的解决方案

1,情景描述:我们在开发过程中,总是会用到上传文件,实际上上传文件一个方法就可以搞定

2,方案

代码:

1,首先从form表单中获取到上传的文件内容:

注意:上传文件的时候form表单的属性上一定要加上enctype=“multipart/form-data”

$filedata = $_FILES['file'];

2,贴上上传文件的代码:

$filename = $filedata['name'];
move_uploaded_file($filedata['tmp_name'],'/uploads/file/'.$filename);

3,执行以上代码会发现一个问题,就是如果我们上传的文件名为中文,移动到某个目录的时候,文件名就会变成乱码的,这时候需要我们把文件名的格式编码转换成utf-8的即可,代码如下:

$filename = iconv('utf-8','gb2312',$filename);

总结

以上所述是小编给大家介绍的php中上传文件的的解决方案,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • PHP move_uploaded_file() 函数(将上传的文件移动到新位置)

    定义和用法 move_uploaded_file() 函数将上传的文件移动到新位置. 若成功,则返回 true,否则返回 false. 语法 move_uploaded_file(file,newloc) 参数 描述 file 必需.规定要移动的文件. newloc 必需.规定文件的新位置. 说明 本函数检查并确保由 file 指定的文件是合法的上传文件(即通过 PHP 的 HTTP POST 上传机制所上传的).如果文件合法,则将其移动为由 newloc 指定的文件. 如果 file 不是合法

  • php判断文件上传图片格式的实例详解

    php判断文件上传图片格式的实例详解 判断文件图片类型, $type = $_FILES['image']['tmp_name'];//文件名 //$type = $this->getImagetype( $type ); $filetype = ['jpg', 'jpeg', 'gif', 'bmp', 'png']; if (! in_array($type, $filetype)) { return "不是图片类型"; } 如上如果用户修改文件后缀为png jpeg等无法满

  • 一个非常实用的php文件上传类

    其实网上已经有很多这样的类了,不过出于练手的目的还是自己仿照着写了一个. 下面的代码放在一个名为UploadFile.class.php文件内 <?php /** * 文件上传 * author:师少兵 * email :beibeijing163@163.com * time :2012/12/09 */ class UploadFile{ private $max_size = '2000000'; //设置上传文件的大小,此为2M private $rand_name = true; //

  • php使用ftp实现文件上传与下载功能

    本文实例为大家分享了php ftp文件上传与下载的具体代码,供大家参考,具体内容如下 ftp文件上传 php自带有ftp操作的函数包,一个比较简单实现的ftp文件上传操作可以通过以下几个步骤来完成: 1.确认ftp server的ip地址与port端口信息(如果使用的是默认端口则可以不关心): 2.进行ftp_connect操作,连接到ftp server(需要注意一下是否设置了port参数): 3.进行ftp_login操作,使用ftp用户名和密码进行登录: 4.这里开始区分,如果只需要把文件

  • PHP中TP5 上传文件的实例详解

    php 文件上传 效果图: 实现代码: application\index\controller\Index.php <?php namespace app\index\controller; use think\Controller; use think\Request; class Index extends Controller { //文件上传表单 public function index() { return $this->fetch(); } //文件上传提交 public fu

  • PHP上传 找不到临时文件夹的解决方法

    最近遇到这样的麻烦,找不到临时文件夹返回的错误代码为6 错误原因: 一.配置文件没有设置临时文件夹 二.临时文件夹没有或者上级文件夹没有相应的权限 处理方式: 找到PHP配置文件PHP.ini,找到以下代码 ;upload_tmp_dir = 改为: upload_tmp_dir = "C:/Windows/Temp" //后面的文件夹路径根据您的系统来设置 如果是权限不够的情况,可以根据不通的操作系统系统分别给其文件加上相应的权限 其他知识: $_FILES['file']['err

  • php+ajax实现异步上传文件或图片功能

    本文为大家分享了ajax异步上传文件或图片功能的具体代码,供大家参考,具体内容如下 //html代码 <form enctype="multipart/form-data" id="upForm"> <input type="file" name="file" ><br><br> <input type="button" value="提交&q

  • PHP大文件分割上传 PHP分片上传

    服务端为什么不能直接传大文件?跟php.ini里面的几个配置有关 upload_max_filesize = 2M //PHP最大能接受的文件大小 post_max_size = 8M //PHP能收到的最大POST值' memory_limit = 128M //内存上限 max_execution_time = 30 //最大执行时间 当然不能简单粗暴的把上面几个值调大,否则服务器内存资源吃光是迟早的问题. 解决思路 好在HTML5开放了新的FILE API,也可以直接操作二进制对象,我们可

  • php中上传文件的的解决方案

    1,情景描述:我们在开发过程中,总是会用到上传文件,实际上上传文件一个方法就可以搞定 2,方案 代码: 1,首先从form表单中获取到上传的文件内容: 注意:上传文件的时候form表单的属性上一定要加上enctype="multipart/form-data" $filedata = $_FILES['file']; 2,贴上上传文件的代码: $filename = $filedata['name']; move_uploaded_file($filedata['tmp_name'],

  • Nginx上传文件全部缓存解决方案

    下面通过文字说明给大家详解Nginx上传文件全部缓存解决方案. 因为应用服务器(Jetty)里面实现了上传时写了进度条.经过缓存.就没法读取到进度了.此外,在Nginx处缓存文件,也降低了传输效率. nginx采用1.5.6. 后端采用nodejs+formidable的方式接受上传文件,本问题的对应与采用什么样的后端没太大关系,这里只是交代一下. 问题: 在前端页面上将文件上传,nginx没有将每一块收到的文件数据块转发给后端,而是全部缓存了下来,全部收取完成后再一块一块的转发给后端,显而易见

  • 解读PHP中上传文件的处理问题

    我们在浏览器中编辑自己的信息,会遇到上传头像:在文库中,我们会上传文档......到处存在"上传"这个词. php是最好的语言(其他语言的程序猿们不要打我...).php在处理交互方面有天然的优势,自然有强大的函数来处理上传文件. 和提交一般的数据一样,上传文件也需要表单.下面建立一个特殊的表单来上传文件. <form enctype="multipart/form-data" action="upload_file.php" name=&

  • Spring MVC中上传文件实例

    SpringMVC(注解)上传文件需要注意的几个地方: 1.form的enctype="multipart/form-data",这个是上传文件必须的 2.applicationContext.xml配置: 复制代码 代码如下: <!-- SpringMVC上传文件时,需要配置MultipartResolver处理器 --> <bean id="multipartResolver" class="org.springframework.w

  • 详解Java的Struts框架中上传文件和客户端验证的实现

    文件上传 Struts 2框架提供了内置支持处理文件上传使用基于HTML表单的文件上传.上传一个文件时,它通常会被存储在一个临时目录中,他们应该由Action类进行处理或移动到一个永久的目录,以确保数据不丢失. 请注意,服务器有一个安全策略可能会禁止写到目录以外的临时目录和属于web应用的目录. 在Struts中的文件上传是通过预先定义的拦截文件上传拦截器这是可通过org.apache.struts2.interceptor.FileUploadInterceptor类的defaultStack

  • 如何限制asp.net中上传文件的大小的代码

    在web.config中控制上传文件大小的地方: 复制代码 代码如下: <system.web><httpRuntime executionTimeout="9999" maxRequestLength="2097151"/></system.web> maxRequestLength是控制上传大小得参数请求的最大大小(以千字节为单位).默认大小为 4096 KB (4 MB).ExecutionTimeout 指示在请求被 AS

  • C#采用HttpWebRequest实现保持会话上传文件到HTTP的方法

    本文实例讲述了C#采用HttpWebRequest实现保持会话上传文件到HTTP的方法,在项目开发中有一定的实用价值,具体方法如下: 一.前言: 这篇文章翻译来自madmik3 写在 CodeProject 上的文章,原标题为: C#'s WebClient.UploadFile with more functionality. 二.正文: 我们使用 WebRequest 来获取网页内容是非常简单的,可是用他来上传文件就没有那么简单了. 如果我们在网页中上传文件,加入下面代码即可: HTML 文

  • php 使用html5 XHR2实现上传文件与进度显示功能示例

    本文实例讲述了php 使用html5 XHR2实现上传文件与进度显示功能.分享给大家供大家参考,具体如下: 思路:只要我们知道上传文件的总大小,还有上传过程中上传文件的大小,那么就可以实现进度显示了. 在html5中,XMLHttpRequest对象,传送数据的时候,progress事件用来返回进度信息. 它分成上传和下载两种情况 1.下载的progress事件属于XMLHttpRequest对象 2.上传的progress事件属于XMLHttpRequest.upload对象. 与progre

  • SpringBoot实现上传文件到AWS S3的代码

    简单记录一下在Springboot中上传文件到AWS S3存储服务的代码. 在 application.xml中添加aws相关配置: custom:   aws:     access-key: CHOBITACCESSKEY     secret-key: CHOBIT/THISIS006SECRET007Key/dotORG     bucket: zhyea     endpoint: www.zhyea.com:80 新建一个 AwsS3Componment类来执行上传文件操作: @Co

  • JavaWeb中上传和下载文件实例代码

    一丶先引入上传下载的lib 二丶上传的的servlet package com.test.action; import java.io.File; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; import java.util.List; import javax.servlet.ServletExcepti

随机推荐