PluginProbe
JetBackup – Backup, Restore & Migrate / 3.1.21.3
JetBackup – Backup, Restore & Migrate v3.1.21.3
3.1.23.6 3.1.23.5 3.1.23.3 3.1.22.4 3.1.22.3 1.4.3 1.4.4 1.4.5 1.4.6 1.4.7 1.4.8 1.4.8.1 1.4.9 1.5.0 1.5.1 1.5.1.1 1.5.2 1.5.3 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.6.0 1.6.10 All 82 releases
backup / src / JetBackup / Archive / File / BZFile.php
BZFile.php
60 lines 1.2 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2 /*
3 *
4 * JetBackup @ package
5 * Created By Idan Ben-Ezra
6 *
7 * Copyrights @ JetApps
8 * https://www.jetapps.com
9 *
10 **/
11 namespace JetBackup\Archive\File;
12
13 use JetBackup\Exception\ArchiveException;
14
15 class BZFile extends File {
16
17 private $_fd;
18
19 public function __construct(string $filename, string $mode) {
20 parent::__construct($filename, $mode);
21
22 if (!($this->_fd = @bzopen($filename, $mode)))
23 throw new ArchiveException('Could not open file: '.$filename);
24 }
25
26 public function truncate($offset): bool {
27 throw new ArchiveException("gzip doesn't support 'truncate'");
28 }
29
30 public function eof(): bool {
31 return feof($this->_fd);
32 }
33
34 public function read(int $length) {
35 return bzread($this->_fd, $length);
36 }
37
38 public function write(string $data, int $length=null) {
39 return bzwrite($this->_fd, $data, $length);
40 }
41
42 public function seek(int $offset, int $whence = SEEK_SET): int {
43 throw new ArchiveException("gzip doesn't support 'seek'");
44 }
45
46 public function tell(): int {
47 return ftell($this->_fd);
48 }
49
50 public function flush() : bool {
51 return fflush($this->_fd);
52 }
53
54 public function close(): bool {
55 if(!$this->_fd) return true;
56 $result = bzclose($this->_fd);
57 $this->_fd = null;
58 return $result;
59 }
60 }