Witam,
mam następujący kod klasy.
class zip {
private $katalog = null;
private $extKatalog = null;
private $plk = null;
private $zip = null;
private $nazwaZIP = null;
public function __construct($katalog, $extKatalog, $nazwaZIP) {
$this->katalog = $katalog;
$this->extKatalog = $extKatalog;
$this->nazwaZIP = $nazwaZIP;
$this->plk = '';
$this->zip = new ZipArchive();
}
public function utworzArchiwum() {
if(!$this->zip->open($this->nazwaZIP, ZIPARCHIVE::CREATE)) {
return false;
}
if(is_dir($this->katalog)) {
if($otwK = @opendir($this->katalog)) {
while(($this->plk = @readdir($otwK)) !== false) {
if($this->plk != '.' && $this->plk != '..') {
$this->zip->addFile($this->katalog.$this->plk, $this->extKatalog.$this->plk);
}
}
}
closedir($otK);
}
// --
return true;
}
public function rozpakujArchiwum($dokad) {
if ($this->zip->open($this->katalog.$this->nazwaZIP)) {
$this->zip->extractTo($dokad);
return true;
}
return false;
}
public function __destruct() {
$this->zip->close();
unset($this->katalog);
unset($this->extKatalog);
unset($this->plk);
unset($this->zip);
unset($this->nazwaZIP);
}
}
A w pliku robie coś takiego.
require_once 'zip.klasa.php';
$zip = new zip('../skrypty/', null, 'plik.txt');
$zip->utworzArchiwum();
I dostaje taki błąd:
Fatal error: Call to undefined method ZipArchive::add_file() in sciezka/zip.klasa.php on line 28
Od czego to może być?
JUŻ ROZWIĄZAŁEM