2017-05-03 13 views
-1

zipファイルをアップロードし、ファイルの合計サイズ、zipファイルの総ファイル数を表示し、各ファイル名をphpコードで表示するにはどうすればよいですか?zipファイルをアップロードしてPHPで表示する方法は?

<?php 
    if ($_FILES) { 
     $fileName = $_FILES['zip']['tmp_name']; 
     $zip = zip_open($fileName); 
      if ($zip) { 
      while ($zip_entry= $zip_read($zip)) { 
       echo "<p>"; 
       echo "<h3> Name:". zip_entry_name($zip_entry). "<h3>"; 
        if (zip_entry_open($zip, $zip_entry)) { 
        echo "<h4>File Contents: </h4> "; 
        $contents = zip_entry_read($zip_entry); 
       echo $contents; 
       echo "<br /><br/>"; 
       zip_entry_close($zip_entry); 
        } 
      } 
       zip_close($zip); 
      } 

    } 
?> 
<form method='post' action='' enctype='multipart/form-data'> 
<input type='file' name='zip'><br/> 
<input type='submit' name='upload' value='upload' /> 
</form> 

答えて

0

あなたはファイルサイズを確認し、深刻なinbuilt phpメソッドを使用することができます。 while($zip_entry= $zip_read($zip)) {

+0

ありがとうございましたu @ahmed ginani – mishal

0

から$を削除

あなたのコードで問題を下回るZipArchive()

<?php 
if ($_FILES) { 
    $fileName = $_FILES['zip']['tmp_name']; 
    $name = $_FILES['zip']['name']; 
    $zip = new ZipArchive(); 
    if ($zip->open($fileName)) { 
     echo "<h3> Name: " . $name . "<h3>"; 
     echo '<h4>File size: ' . filesize($fileName) . '</h4>'; 
     echo '<h4>Total files: ' . $zip->numFiles . '</h4>'; 
     echo "<h4>File Contents: </h4>"; 
     for ($i = 0; $i < $zip->numFiles; $i++) { 
      $stat = $zip->statIndex($i); 
      echo basename($stat['name']) . "<br>"; 
     } 
     $zip->close(); 
    } 

} 

?> 

出力

enter image description here

使用を確認することができます。また here

から読み取ります

関連する問題