| Server IP : 52.9.100.119 / Your IP : 216.73.216.193 Web Server : Apache/2.4.61 (Amazon) OpenSSL/1.0.2k-fips PHP/7.3.30 Phusion_Passenger/5.1.5 System : Linux ip-172-31-9-35 4.14.355-196.618.amzn1.x86_64 #1 SMP Mon Apr 7 17:09:50 UTC 2025 x86_64 User : root ( 0) PHP Version : 7.3.30 Disable Function : exec,passthru,shell_exec,system,popen,proc_open MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : OFF Directory : /data/html/garlans_live/vendor/phpoffice/common/src/Common/Adapter/Zip/ |
Upload File : |
<?php
namespace PhpOffice\Common\Adapter\Zip;
use PclZip;
class PclZipAdapter implements ZipInterface
{
/**
* @var PclZip
*/
protected $oPclZip;
/**
* @var string
*/
protected $tmpDir;
/**
* @param $filename
* @return $this
*/
public function open($filename)
{
$this->oPclZip = new PclZip($filename);
$this->tmpDir = sys_get_temp_dir();
return $this;
}
/**
* @return $this
*/
public function close()
{
return $this;
}
/**
* @param $localname
* @param $contents
* @return $this
* @throws \Exception
*/
public function addFromString($localname, $contents)
{
$pathData = pathinfo($localname);
$hFile = fopen($this->tmpDir.'/'.$pathData['basename'], "wb");
fwrite($hFile, $contents);
fclose($hFile);
$res = $this->oPclZip->add($this->tmpDir.'/'.$pathData['basename'], PCLZIP_OPT_REMOVE_PATH, $this->tmpDir, PCLZIP_OPT_ADD_PATH, $pathData['dirname']);
if ($res == 0) {
throw new \Exception("Error zipping files : " . $this->oPclZip->errorInfo(true));
}
unlink($this->tmpDir.'/'.$pathData['basename']);
return $this;
}
}