Cet article présente principalement en détail la segmentation et la fusion des fichiers du transfert de reprise de point d'arrêt PHP. Il a une certaine valeur de référence. Les amis intéressés peuvent se référer à
PHP pour implémenter le transfert de reprise de point d'arrêt. fichier en plusieurs petits fichiers, puis téléchargez-les individuellement . Fusionner après transmission.
│ merge.php – script de fusion de fichiers
│ merge.zip – fichier fusionné
│ socket.zip – fichier qui doit être divisé
│ divisé. php – Script de fichier divisé
│
└─split – Répertoire de petits fichiers divisés
Ce qui suit est le code source
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);
merge.php
<?php $filelist = glob('./split/*socket*.tmp'); $filesize = 10; //print_r($filelist); $mergeFileName = 'merg.zip'; unlink($mergeFileName); $fp2 = fopen($mergeFileName,"w+"); foreach($filelist as $k => $v) { $fp = fopen($v, "rb"); $content = fread($fp, $filesize); fwrite($fp2, $content, $filesize); unset($content); fclose($fp); echo $k,"\n"; } fclose($fp2);
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!