PluginProbe
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder / 3.6.51
Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder v3.6.51
6.2.14 6.2.13 6.2.12 6.2.10 6.2.11 6.2.9 6.2.8 6.2.7 6.2.6 6.2.5 6.2.4 6.2.3 6.2.2 3.6.22 3.6.31 3.6.40 3.6.41 3.6.42 3.6.50 3.6.51 3.6.60 3.6.61 3.6.62 3.6.64 3.6.65 All 196 releases
fluentform / app / Services / Spout / Reader / ODS / Reader.php

Reader.php in Fluent Forms – Customizable Contact Forms, Survey, Quiz, & Conversational Form Builder 3.6.51, at app/Services/Spout/Reader/ODS/Reader.php

86 lines 2.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Box\Spout\Reader\ODS;
4
5 use Box\Spout\Common\Exception\IOException;
6 use Box\Spout\Reader\AbstractReader;
7
8 /**
9 * Class Reader
10 * This class provides support to read data from a ODS file
11 *
12 * @package Box\Spout\Reader\ODS
13 */
14 class Reader extends AbstractReader
15 {
16 /** @var \ZipArchive */
17 protected $zip;
18
19 /** @var SheetIterator To iterator over the ODS sheets */
20 protected $sheetIterator;
21
22 /**
23 * Returns the reader's current options
24 *
25 * @return ReaderOptions
26 */
27 protected function getOptions()
28 {
29 if (!isset($this->options)) {
30 $this->options = new ReaderOptions();
31 }
32 return $this->options;
33 }
34
35 /**
36 * Returns whether stream wrappers are supported
37 *
38 * @return bool
39 */
40 protected function doesSupportStreamWrapper()
41 {
42 return false;
43 }
44
45 /**
46 * Opens the file at the given file path to make it ready to be read.
47 *
48 * @param string $filePath Path of the file to be read
49 * @return void
50 * @throws \Box\Spout\Common\Exception\IOException If the file at the given path or its content cannot be read
51 * @throws \Box\Spout\Reader\Exception\NoSheetsFoundException If there are no sheets in the file
52 */
53 protected function openReader($filePath)
54 {
55 $this->zip = new \ZipArchive();
56
57 if ($this->zip->open($filePath) === true) {
58 $this->sheetIterator = new SheetIterator($filePath, $this->getOptions());
59 } else {
60 throw new IOException("Could not open $filePath for reading.");
61 }
62 }
63
64 /**
65 * Returns an iterator to iterate over sheets.
66 *
67 * @return SheetIterator To iterate over sheets
68 */
69 protected function getConcreteSheetIterator()
70 {
71 return $this->sheetIterator;
72 }
73
74 /**
75 * Closes the reader. To be used after reading the file.
76 *
77 * @return void
78 */
79 protected function closeReader()
80 {
81 if ($this->zip) {
82 $this->zip->close();
83 }
84 }
85 }
86