介绍
怎么在php中利用ajax对文件进行切割上传?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
具体如下:
html5中的文件对象继承Blob二进制对象,Blob提供了一个片函数,可以用来切割文件数据。
& lt; ! DOCTYPE HTML> & lt; html  lang=皕h-CN"祝辞 & lt; head> & lt;才能meta charset=癠TF-8"比; & lt;才能title> & lt;/title> & lt;/head> & lt; body> & lt;才能form 方法=皃ost", id=癿yForm"比; ,,,& lt; input 类型=癴ile", name=癴ile", id=皍pfile",/比; ,,,& lt; input 类型=皊ubmit", name=皊ubmit",价值=https://www.yisu.com/zixun/碧峤?/> 形式身体> <脚本type=" text/javascript”> var myForm=. getelementbyid (“myForm”); var upfile=. getelementbyid (“upfile”); myForm。onsubmit=function () {//获取文件对象 var文件=upfile.files [0];//获取文件大小 var文件大?file.size;//一次截取的大小(字节) var CutSize=1024 * 1024 * 10;//开始截取位置 var CutStart=0;//结束截取位置 var CutEnd=CutStart + CutSize;//截取的临时文件 var临时=new Blob (); 而(CutStart <文件大小){ 临时文件。片(CutStart CutEnd);//我们创建一个FormData对象 var fd=new FormData ();//把文件添加到FormData对象中 fd。追加(“文件”,临时文件); var xhr=new XMLHttpRequest ();//这里使用同步 xhr。(“后”、“upfile开放。php”,假);//上传进度 console.log(数学。轮((CutStart + tmpfile.size)/文件大小* 100)+“%”);//发送FormData对象 xhr.send (fd);//重新设置截取文件位置 CutStart=CutEnd; CutEnd=CutStart + CutSize; } 返回错误; };> 脚本