質問

私は、ウェブサイトからチュートリアル<のhref = "http://net.tutsplus.com/videos/screencasts/how-to-open-zip-files-with-php/" のrel = "nofollowをnoreferrer" を持っています>ネットTuts のzipファイルをアップロードし、サーバへのファイルの中からデータを抽出するために使用されます。

のコピーとストレートWebページからコードを貼り付けるには動作しませんでした、エラーが処理されているスクリプトを途中で発生しました。

Fatal error: Cannot instantiate non-existent class: ziparchive in /www/website_here.co.uk/httpdocs/test/functions.php on line 6

これは私が使用しているPHPのバージョンで行うことであることは可能ですか?ここでは、上で立ち往生コードは次のとおりです。

<?php

function openZip($file_to_open) {
    global $target;
    global $unique_folder;
    $zip = new ZipArchive();
        $x = $zip->open($file_to_open);
        if ($x === true) {
            $zip->extractTo($target . $unique_folder);
            $zip->close();

            unlink($file_to_open); #deletes the zip file. We no longer need it.
        } else {
            die("There was a problem. Please try again!");
        }
    }

?>

6行目:$ジップ=新しいZIPARCHIVE();

私は、PHPのバージョン4.3.9を使用しています。

役に立ちましたか?

解決

PHP 4でどうしても PECL ZIP 1.1.0 の(またはそれ以降)をインストールする必要がありますZipArchiveクラスへのアクセス権を持っているためです。これらの命令がを従います。

それができない場合、あなたは非OOのzip_openを使用する必要があります。

zip_readなどAPIます。

他のヒント

include('pclzip.lib.php');
$zip = new PclZip($file_to_open);
if ($zip->extract(PCLZIP_OPT_PATH, $target . $un_f) == 0) {
    close("close");
} else {
    unlink($file_op);
}

私はPclZipを使用同意し、あなたが時間を持っていない場合は抽出データの使用をそれをコーディングしますUは、参照ライブラリを利用する必要があります。

あなたはZipArchiveクラスを含むライブラリへの参照を必要とする

$zipn=$_REQUEST['zip'];
echo $zipn;

$zip = new ZipArchive;
echo $_SERVER['DOCUMENT_ROOT']."/";
if ($zip->open($zipn) === TRUE) {
  $zip->extractTo($_SERVER['DOCUMENT_ROOT']."/");
  $zip->close();
  echo 'ok';
} else {
  echo 'failed';
}

---------- susheel susheel1104@gmail.com

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top