欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP實現(xiàn)斷點續(xù)傳亂序合并文件的方法

 更新時間:2018年09月06日 14:16:02   作者:luyaran  
這篇文章主要介紹了PHP實現(xiàn)斷點續(xù)傳亂序合并文件的方法,涉及php文件讀寫、傳輸、排序等相關(guān)操作技巧,需要的朋友可以參考下

本文實例講述了PHP實現(xiàn)斷點續(xù)傳亂序合并文件的方法。分享給大家供大家參考,具體如下:

分割成多個文件發(fā)送,由于網(wǎng)絡(luò)原因并不上先發(fā)就能發(fā)接收到。所以我們不能按順序合并。

分割文件源碼前面一篇文章《PHP斷點續(xù)傳之文件分割合并

merge2.php

<?php
$fileTotaiSize = filesize("socket.zip");
$filelist = glob('./split/*socket*.tmp');
$filesize = 3096;
//打亂讀取文件順序
shuffle($filelist);
$mergeFileName = 'merg2.zip';
 if(is_file($mergeFileName))
 {
 unlink($mergeFileName);
 }
 $fp2 = fopen($mergeFileName,"w+");
 //創(chuàng)建空白文件
 $str = str_pad('',$fileTotaiSize);
 fwrite($fp2, $str, $fileTotaiSize);
foreach($filelist as $k => $v)
{
 $tmp = explode('.',$v);
 $len = explode('-', $tmp[3]);
 $offset = (int) $len[0];
 $fp = fopen($v, "rb");
 $content = fread($fp, $filesize);
  echo $offset, "\n";
  fseek($fp2, $offset);
  fwrite($fp2, $content, strlen($content));
  unset($content);
  fclose($fp);
}
fclose($fp2);

補充:前文中的分割文件split.php如下:

<?php
$fp = fopen("socket.zip", "rb");
$filesize = 10;
$i = 0;
$no = 1;
while(!feof($fp))
{
 $file = fread($fp, $filesize);
 $fp2 = fopen("./split/socket.port".sprintf("%04d",$no).".".$i."-".($i+$filesize).".tmp", "wb");
 fwrite($fp2, $file, $filesize);
 fclose($fp2);
 $i+=$filesize+1;
$no++;
}
fclose($fp);

更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《PHP目錄操作技巧匯總》、《php文件操作總結(jié)》、《PHP常用遍歷算法與技巧總結(jié)》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計算法總結(jié)》、《php socket用法總結(jié)》及《PHP網(wǎng)絡(luò)編程技巧總結(jié)

希望本文所述對大家PHP程序設(shè)計有所幫助。

相關(guān)文章

  • 淺談php的優(yōu)缺點

    淺談php的優(yōu)缺點

    本文給大家簡單總結(jié)了php的10點優(yōu)點和3個缺點,都是個人對于php開發(fā)的一些體悟和總結(jié),有需要的小伙伴可以參考下。
    2015-07-07
  • php 實現(xiàn)進制相互轉(zhuǎn)換

    php 實現(xiàn)進制相互轉(zhuǎn)換

    最近的項目中需要用到進制轉(zhuǎn)換,這個問題在剛剛接觸計算機理論時候,還是很會的,好久不用,居然模糊了……
    2016-04-04
  • 深入了解PHP類Class的概念

    深入了解PHP類Class的概念

    日常環(huán)境由無數(shù)實體組成:植物、人群、交通工具、食物……實在是太多了,光是把它們列出來都要花上幾個小時的時間。每個實體都由一組性質(zhì)和行為來定義
    2012-06-06
  • PHP實現(xiàn)的函數(shù)重載功能示例

    PHP實現(xiàn)的函數(shù)重載功能示例

    這篇文章主要介紹了PHP實現(xiàn)的函數(shù)重載功能,結(jié)合實例形式分析了php面向?qū)ο蟪绦蛟O(shè)計中使用__call方法的重載及構(gòu)造函數(shù)重載相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-08-08
  • VIM中設(shè)置php自動縮進為4個空格的方法詳解

    VIM中設(shè)置php自動縮進為4個空格的方法詳解

    本篇文章是對VIM中設(shè)置php自動縮進為4個空格的方法進行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • 用php來限制每個ip每天瀏覽頁面數(shù)量的實現(xiàn)思路

    用php來限制每個ip每天瀏覽頁面數(shù)量的實現(xiàn)思路

    這篇文章主要介紹了用php來限制每個ip每天瀏覽頁面數(shù)量的實現(xiàn)思路,需要的朋友可以參考下
    2015-02-02
  • php5.6.x到php7.0.x特性小結(jié)

    php5.6.x到php7.0.x特性小結(jié)

    這篇文章主要介紹了php5.6.x到php7.0.x特性,總結(jié)分析了php5.6.x到php7.0.x各種常用特性及新增特性,以及相關(guān)使用技巧,需要的朋友可以參考下
    2019-08-08
  • 當(dāng)前比較流行的兩款PHP加密、解密工具Zend Guard和iconCube介紹

    當(dāng)前比較流行的兩款PHP加密、解密工具Zend Guard和iconCube介紹

    這篇文章主要介紹了當(dāng)前比較流行的兩款PHP加密、解密工具Zend Guard和iconCube介紹,本文還給出了iconCube的安裝教程,需要的朋友可以參考下
    2014-09-09
  • 深入Nginx + PHP 緩存詳解

    深入Nginx + PHP 緩存詳解

    以下是對Nginx中的PHP緩存進行了詳細(xì)的分析介紹,需要的朋友可以參考下
    2013-07-07
  • php利用jsonp實現(xiàn)跨域

    php利用jsonp實現(xiàn)跨域

    JSONP(JSON?with?Padding)是一種使用普通的<script>標(biāo)簽來發(fā)起跨域請求的方法,本文主要為大家詳細(xì)介紹了PHP如何利用jsonp實現(xiàn)跨域,需要的可以參考下
    2023-11-11

最新評論