{"id":25772,"date":"2021-06-06T11:39:00","date_gmt":"2021-06-06T08:39:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25772"},"modified":"2021-10-18T03:05:12","modified_gmt":"2021-10-18T00:05:12","slug":"come-implementare-il-caricamento-di-blocchi-in-php","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/it\/come-implementare-il-caricamento-di-blocchi-in-php\/","title":{"rendered":"Come implementare il caricamento di blocchi in PHP"},"content":{"rendered":"<p>Inserito in <a href=\"https:\/\/artisansweb.net\/category\/php\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PHP<\/a><\/p>\n<p>Di recente uno dei nostri lettori ha chiesto informazioni sul caricamento di blocchi in PHP. Vogliono caricare file di grandi dimensioni in modo rapido e affidabile. Implementando il caricamento di blocchi \u00e8 possibile caricare\/spostare facilmente file di grandi dimensioni su un server. In questo articolo scriver\u00f2 un codice PHP per il caricamento di blocchi che pu\u00f2 essere utile per caricare\/spostare file di grandi dimensioni.<\/p>\n<p>A volte nell&#8217;applicazione web \u00e8 necessario gestire file di grandi dimensioni. Potrebbero essere video, file zip che devono essere spostati in una posizione specifica sul server.<\/p>\n<p>\u00c8 molto facile implementare il caricamento di blocchi in PHP. Nel codice sottostante stiamo spostando il file sorgente all&#8217;interno della directory &#8216;uploads&#8217;. Leggiamo il file in blocchi di 256 byte e lo scriviamo nel file di destinazione. Questo processo continuer\u00e0 finch\u00e9 lo script non legger\u00e0 tutti i byte dal file di origine e li scriver\u00e0 nel file di destinazione. Per questa operazione, sto usando le funzioni native di PHP: fopen, fread, fwrite e fseek.<\/p>\n<p>Supponiamo che tu abbia un file &quot;video.mp4&quot; che desideri spostare nella cartella &quot;uploads&quot;. Di seguito \u00e8 riportato il codice che sposta un file in blocchi nella cartella di destinazione.<\/p>\n<pre><code>&lt;?php\n$source = 'video.mp4';\n$orig_file_size = filesize($source);\n$destination = 'uploads\/video.mp4';\n\u00a0\n$chunk_size = 256; \/\/ chunk in bytes\n$upload_start = 0;\n\u00a0\n$handle = fopen($source, \"rb\");\n\u00a0\n$fp = fopen($destination, 'w');\n\u00a0\nwhile($upload_start &lt; $orig_file_size) {\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$contents = fread($handle, $chunk_size);\n\u00a0\u00a0\u00a0\u00a0fwrite($fp, $contents);\n\u00a0\n\u00a0\u00a0\u00a0\u00a0$upload_start += strlen($contents);\n\u00a0\u00a0\u00a0\u00a0fseek($handle, $upload_start);\n}\n\u00a0\nfclose($handle);\nfclose($fp);\n\u00a0\necho \"File uploaded successfully.\";<\/code><\/pre>\n<p>Questo \u00e8 tutto! \u00c8 molto semplice implementare il caricamento di blocchi in PHP. Mi piacerebbe sentire i tuoi pensieri o suggerimenti nella sezione commenti qui sotto.<\/p>\n<h4>articoli Correlati<\/h4>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/carica-file-su-amazon-s3-utilizzando-aws-php-sdk\/\" title=\"Carica file su Amazon S3 utilizzando AWS PHP SDK\">Carica file su Amazon S3 utilizzando AWS PHP SDK<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/trascina-e-rilascia-il-caricamento-di-file-utilizzando-javascript-e-php\/\" title=\"Trascina e rilascia il caricamento di file utilizzando JavaScript e PHP\">Trascina e rilascia il caricamento di file utilizzando JavaScript e PHP<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/come-trasferire-file-su-server-remoto-in-php\/\" title=\"Come trasferire file su server remoto in PHP\">Come trasferire file su server remoto in PHP<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>In questo articolo, ti mostro come eseguire il caricamento di blocchi in PHP. Utilizzando una tecnica di suddivisione in blocchi, \u00e8 possibile caricare file di grandi dimensioni in modo rapido e affidabile.<\/p>\n","protected":false},"author":1,"featured_media":21646,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[276],"tags":[846],"class_list":["post-25772","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-php-7","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/25772","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/comments?post=25772"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/25772\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media\/21646"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media?parent=25772"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/categories?post=25772"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/tags?post=25772"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}