@@ -10,9 +10,9 @@ |
||
| 10 | 10 | { |
| 11 | 11 | protected XMLHelper_SimpleXML $xml; |
| 12 | 12 | |
| 13 | - /** |
|
| 14 | - * @var LibXMLError |
|
| 15 | - */ |
|
| 13 | + /** |
|
| 14 | + * @var LibXMLError |
|
| 15 | + */ |
|
| 16 | 16 | protected LibXMLError $nativeError; |
| 17 | 17 | |
| 18 | 18 | public function __construct(XMLHelper_SimpleXML $xml, LibXMLError $nativeError) |
@@ -23,14 +23,14 @@ discard block |
||
| 23 | 23 | { |
| 24 | 24 | use Traits_Optionable; |
| 25 | 25 | |
| 26 | - /** |
|
| 27 | - * @var array<string,mixed> |
|
| 28 | - */ |
|
| 26 | + /** |
|
| 27 | + * @var array<string,mixed> |
|
| 28 | + */ |
|
| 29 | 29 | private array $overrides = array(); |
| 30 | 30 | |
| 31 | - /** |
|
| 32 | - * @var Request_RefreshParams_Exclude[] |
|
| 33 | - */ |
|
| 31 | + /** |
|
| 32 | + * @var Request_RefreshParams_Exclude[] |
|
| 33 | + */ |
|
| 34 | 34 | private array $excludes = array(); |
| 35 | 35 | |
| 36 | 36 | public function getDefaultOptions() : array |
@@ -41,27 +41,27 @@ discard block |
||
| 41 | 41 | ); |
| 42 | 42 | } |
| 43 | 43 | |
| 44 | - /** |
|
| 45 | - * Whether to automatically exclude the session variable |
|
| 46 | - * from the parameters. |
|
| 47 | - * |
|
| 48 | - * @param bool $exclude |
|
| 49 | - * @return Request_RefreshParams |
|
| 50 | - */ |
|
| 44 | + /** |
|
| 45 | + * Whether to automatically exclude the session variable |
|
| 46 | + * from the parameters. |
|
| 47 | + * |
|
| 48 | + * @param bool $exclude |
|
| 49 | + * @return Request_RefreshParams |
|
| 50 | + */ |
|
| 51 | 51 | public function setExcludeSessionName(bool $exclude=true) : Request_RefreshParams |
| 52 | 52 | { |
| 53 | 53 | $this->setOption('exclude-session-name', $exclude); |
| 54 | 54 | return $this; |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | - /** |
|
| 58 | - * Whether to automatically exclude the HTML_QuickForm2 |
|
| 59 | - * request variable used to track whether a form has been |
|
| 60 | - * submitted. |
|
| 61 | - * |
|
| 62 | - * @param bool $exclude |
|
| 63 | - * @return Request_RefreshParams |
|
| 64 | - */ |
|
| 57 | + /** |
|
| 58 | + * Whether to automatically exclude the HTML_QuickForm2 |
|
| 59 | + * request variable used to track whether a form has been |
|
| 60 | + * submitted. |
|
| 61 | + * |
|
| 62 | + * @param bool $exclude |
|
| 63 | + * @return Request_RefreshParams |
|
| 64 | + */ |
|
| 65 | 65 | public function setExcludeQuickform(bool $exclude) : Request_RefreshParams |
| 66 | 66 | { |
| 67 | 67 | $this->setOption('exclude-quickform-submitter', $exclude); |
@@ -99,12 +99,12 @@ discard block |
||
| 99 | 99 | return $this; |
| 100 | 100 | } |
| 101 | 101 | |
| 102 | - /** |
|
| 103 | - * Excludes a request parameter by name. |
|
| 104 | - * |
|
| 105 | - * @param array<int,string|number> $paramNames |
|
| 106 | - * @return Request_RefreshParams |
|
| 107 | - */ |
|
| 102 | + /** |
|
| 103 | + * Excludes a request parameter by name. |
|
| 104 | + * |
|
| 105 | + * @param array<int,string|number> $paramNames |
|
| 106 | + * @return Request_RefreshParams |
|
| 107 | + */ |
|
| 108 | 108 | public function excludeParamsByName(array $paramNames) : Request_RefreshParams |
| 109 | 109 | { |
| 110 | 110 | foreach($paramNames as $name) |
@@ -115,15 +115,15 @@ discard block |
||
| 115 | 115 | return $this; |
| 116 | 116 | } |
| 117 | 117 | |
| 118 | - /** |
|
| 119 | - * Overrides a parameter: even if it exists, this |
|
| 120 | - * value will be used instead - even if it is on |
|
| 121 | - * the list of excluded parameters. |
|
| 122 | - * |
|
| 123 | - * @param string $paramName |
|
| 124 | - * @param mixed $paramValue |
|
| 125 | - * @return Request_RefreshParams |
|
| 126 | - */ |
|
| 118 | + /** |
|
| 119 | + * Overrides a parameter: even if it exists, this |
|
| 120 | + * value will be used instead - even if it is on |
|
| 121 | + * the list of excluded parameters. |
|
| 122 | + * |
|
| 123 | + * @param string $paramName |
|
| 124 | + * @param mixed $paramValue |
|
| 125 | + * @return Request_RefreshParams |
|
| 126 | + */ |
|
| 127 | 127 | public function overrideParam(string $paramName, $paramValue) : Request_RefreshParams |
| 128 | 128 | { |
| 129 | 129 | $this->overrides[$paramName] = $paramValue; |
@@ -131,12 +131,12 @@ discard block |
||
| 131 | 131 | return $this; |
| 132 | 132 | } |
| 133 | 133 | |
| 134 | - /** |
|
| 135 | - * Overrides an array of parameters. |
|
| 136 | - * |
|
| 137 | - * @param array<string|number,mixed> $params |
|
| 138 | - * @return Request_RefreshParams |
|
| 139 | - */ |
|
| 134 | + /** |
|
| 135 | + * Overrides an array of parameters. |
|
| 136 | + * |
|
| 137 | + * @param array<string|number,mixed> $params |
|
| 138 | + * @return Request_RefreshParams |
|
| 139 | + */ |
|
| 140 | 140 | public function overrideParams(array $params) : Request_RefreshParams |
| 141 | 141 | { |
| 142 | 142 | foreach($params as $name => $value) |
@@ -147,14 +147,14 @@ discard block |
||
| 147 | 147 | return $this; |
| 148 | 148 | } |
| 149 | 149 | |
| 150 | - /** |
|
| 151 | - * Resolves all the parameter exclusions that should |
|
| 152 | - * be applied to the list of parameters. This includes |
|
| 153 | - * the manually added exclusions and the dynamic exclusions |
|
| 154 | - * like the session name. |
|
| 155 | - * |
|
| 156 | - * @return Request_RefreshParams_Exclude[] |
|
| 157 | - */ |
|
| 150 | + /** |
|
| 151 | + * Resolves all the parameter exclusions that should |
|
| 152 | + * be applied to the list of parameters. This includes |
|
| 153 | + * the manually added exclusions and the dynamic exclusions |
|
| 154 | + * like the session name. |
|
| 155 | + * |
|
| 156 | + * @return Request_RefreshParams_Exclude[] |
|
| 157 | + */ |
|
| 158 | 158 | private function resolveExcludes() : array |
| 159 | 159 | { |
| 160 | 160 | $excludes = $this->excludes; |
@@ -165,12 +165,12 @@ discard block |
||
| 165 | 165 | return $excludes; |
| 166 | 166 | } |
| 167 | 167 | |
| 168 | - /** |
|
| 169 | - * Automatically excludes the session name from the |
|
| 170 | - * parameters, if present. |
|
| 171 | - * |
|
| 172 | - * @param Request_RefreshParams_Exclude[] $excludes |
|
| 173 | - */ |
|
| 168 | + /** |
|
| 169 | + * Automatically excludes the session name from the |
|
| 170 | + * parameters, if present. |
|
| 171 | + * |
|
| 172 | + * @param Request_RefreshParams_Exclude[] $excludes |
|
| 173 | + */ |
|
| 174 | 174 | private function autoExcludeSessionName(array &$excludes) : void |
| 175 | 175 | { |
| 176 | 176 | if($this->getBoolOption('exclude-session-name')) |
@@ -179,12 +179,12 @@ discard block |
||
| 179 | 179 | } |
| 180 | 180 | } |
| 181 | 181 | |
| 182 | - /** |
|
| 183 | - * Automatically excludes the HTML_QuickForm2 submit |
|
| 184 | - * tracking variable, when enabled. |
|
| 185 | - * |
|
| 186 | - * @param Request_RefreshParams_Exclude[] $excludes |
|
| 187 | - */ |
|
| 182 | + /** |
|
| 183 | + * Automatically excludes the HTML_QuickForm2 submit |
|
| 184 | + * tracking variable, when enabled. |
|
| 185 | + * |
|
| 186 | + * @param Request_RefreshParams_Exclude[] $excludes |
|
| 187 | + */ |
|
| 188 | 188 | private function autoExcludeQuickform(array &$excludes) : void |
| 189 | 189 | { |
| 190 | 190 | if($this->getBoolOption('exclude-quickform-submitter')) |
@@ -196,12 +196,12 @@ discard block |
||
| 196 | 196 | } |
| 197 | 197 | } |
| 198 | 198 | |
| 199 | - /** |
|
| 200 | - * Retrieves the list of parameters matching the |
|
| 201 | - * current settings. |
|
| 202 | - * |
|
| 203 | - * @return array<string,mixed> |
|
| 204 | - */ |
|
| 199 | + /** |
|
| 200 | + * Retrieves the list of parameters matching the |
|
| 201 | + * current settings. |
|
| 202 | + * |
|
| 203 | + * @return array<string,mixed> |
|
| 204 | + */ |
|
| 205 | 205 | public function getParams() : array |
| 206 | 206 | { |
| 207 | 207 | $params = $this->removeExcluded($_REQUEST); |
@@ -217,12 +217,12 @@ discard block |
||
| 217 | 217 | return $params; |
| 218 | 218 | } |
| 219 | 219 | |
| 220 | - /** |
|
| 221 | - * Removes all excluded parameters from the array. |
|
| 222 | - * |
|
| 223 | - * @param array<string,mixed> $params |
|
| 224 | - * @return array<string,mixed> |
|
| 225 | - */ |
|
| 220 | + /** |
|
| 221 | + * Removes all excluded parameters from the array. |
|
| 222 | + * |
|
| 223 | + * @param array<string,mixed> $params |
|
| 224 | + * @return array<string,mixed> |
|
| 225 | + */ |
|
| 226 | 226 | private function removeExcluded(array $params) : array |
| 227 | 227 | { |
| 228 | 228 | $result = array(); |
@@ -240,14 +240,14 @@ discard block |
||
| 240 | 240 | return $result; |
| 241 | 241 | } |
| 242 | 242 | |
| 243 | - /** |
|
| 244 | - * Checks all configured exclusions to see if the |
|
| 245 | - * parameter should be excluded or not. |
|
| 246 | - * |
|
| 247 | - * @param string $paramName |
|
| 248 | - * @param mixed $paramValue |
|
| 249 | - * @return bool |
|
| 250 | - */ |
|
| 243 | + /** |
|
| 244 | + * Checks all configured exclusions to see if the |
|
| 245 | + * parameter should be excluded or not. |
|
| 246 | + * |
|
| 247 | + * @param string $paramName |
|
| 248 | + * @param mixed $paramValue |
|
| 249 | + * @return bool |
|
| 250 | + */ |
|
| 251 | 251 | public function isExcluded(string $paramName, $paramValue) : bool |
| 252 | 252 | { |
| 253 | 253 | $excludes = $this->resolveExcludes(); |
@@ -20,9 +20,9 @@ |
||
| 20 | 20 | */ |
| 21 | 21 | class Request_RefreshParams_Exclude_Callback extends Request_RefreshParams_Exclude |
| 22 | 22 | { |
| 23 | - /** |
|
| 24 | - * @var callable |
|
| 25 | - */ |
|
| 23 | + /** |
|
| 24 | + * @var callable |
|
| 25 | + */ |
|
| 26 | 26 | private $callback; |
| 27 | 27 | |
| 28 | 28 | public function __construct(callable $callback) |
@@ -6,9 +6,9 @@ discard block |
||
| 6 | 6 | |
| 7 | 7 | abstract class VariableInfo_Renderer |
| 8 | 8 | { |
| 9 | - /** |
|
| 10 | - * @var mixed|NULL |
|
| 11 | - */ |
|
| 9 | + /** |
|
| 10 | + * @var mixed|NULL |
|
| 11 | + */ |
|
| 12 | 12 | protected $value; |
| 13 | 13 | |
| 14 | 14 | protected VariableInfo $info; |
@@ -24,11 +24,11 @@ discard block |
||
| 24 | 24 | |
| 25 | 25 | abstract protected function init() : void; |
| 26 | 26 | |
| 27 | - /** |
|
| 28 | - * Renders the value to the target format. |
|
| 29 | - * |
|
| 30 | - * @return string |
|
| 31 | - */ |
|
| 27 | + /** |
|
| 28 | + * Renders the value to the target format. |
|
| 29 | + * |
|
| 30 | + * @return string |
|
| 31 | + */ |
|
| 32 | 32 | public function render() : string |
| 33 | 33 | { |
| 34 | 34 | return $this->_render(); |
@@ -78,12 +78,12 @@ discard block |
||
| 78 | 78 | |
| 79 | 79 | } |
| 80 | 80 | |
| 81 | - /** |
|
| 82 | - * Creates and returns a new instance of the CSV builder which |
|
| 83 | - * can be used to build CSV from scratch. |
|
| 84 | - * |
|
| 85 | - * @return CSVHelper_Builder |
|
| 86 | - */ |
|
| 81 | + /** |
|
| 82 | + * Creates and returns a new instance of the CSV builder which |
|
| 83 | + * can be used to build CSV from scratch. |
|
| 84 | + * |
|
| 85 | + * @return CSVHelper_Builder |
|
| 86 | + */ |
|
| 87 | 87 | public static function createBuilder() : CSVHelper_Builder |
| 88 | 88 | { |
| 89 | 89 | return new CSVHelper_Builder(); |
@@ -91,16 +91,16 @@ discard block |
||
| 91 | 91 | |
| 92 | 92 | |
| 93 | 93 | |
| 94 | - /** |
|
| 95 | - * Loads CSV data from a string. |
|
| 96 | - * |
|
| 97 | - * Note: Use the {@link hasErrors()} method to |
|
| 98 | - * check if the string could be parsed correctly |
|
| 99 | - * afterwards. |
|
| 100 | - * |
|
| 101 | - * @param string $string |
|
| 102 | - * @return $this |
|
| 103 | - */ |
|
| 94 | + /** |
|
| 95 | + * Loads CSV data from a string. |
|
| 96 | + * |
|
| 97 | + * Note: Use the {@link hasErrors()} method to |
|
| 98 | + * check if the string could be parsed correctly |
|
| 99 | + * afterwards. |
|
| 100 | + * |
|
| 101 | + * @param string $string |
|
| 102 | + * @return $this |
|
| 103 | + */ |
|
| 104 | 104 | public function loadString(string $string) : self |
| 105 | 105 | { |
| 106 | 106 | // remove any UTF byte order marks that may still be present in the string |
@@ -114,20 +114,20 @@ discard block |
||
| 114 | 114 | return $this; |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | - /** |
|
| 118 | - * Loads CSV data from a file. |
|
| 119 | - * |
|
| 120 | - * Note: Use the {@link hasErrors()} method to |
|
| 121 | - * check if the string could be parsed correctly |
|
| 122 | - * afterwards. |
|
| 123 | - * |
|
| 124 | - * @param string $file |
|
| 125 | - * @throws FileHelper_Exception |
|
| 126 | - * @return CSVHelper |
|
| 127 | - * |
|
| 128 | - * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 129 | - * @see FileHelper::ERROR_CANNOT_READ_FILE_CONTENTS |
|
| 130 | - */ |
|
| 117 | + /** |
|
| 118 | + * Loads CSV data from a file. |
|
| 119 | + * |
|
| 120 | + * Note: Use the {@link hasErrors()} method to |
|
| 121 | + * check if the string could be parsed correctly |
|
| 122 | + * afterwards. |
|
| 123 | + * |
|
| 124 | + * @param string $file |
|
| 125 | + * @throws FileHelper_Exception |
|
| 126 | + * @return CSVHelper |
|
| 127 | + * |
|
| 128 | + * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 129 | + * @see FileHelper::ERROR_CANNOT_READ_FILE_CONTENTS |
|
| 130 | + */ |
|
| 131 | 131 | public function loadFile(string $file) : self |
| 132 | 132 | { |
| 133 | 133 | $csv = FileHelper::readContents($file); |
@@ -188,19 +188,19 @@ discard block |
||
| 188 | 188 | return $this->headersPosition === $position; |
| 189 | 189 | } |
| 190 | 190 | |
| 191 | - /** |
|
| 192 | - * Specifies where the headers are positioned in the |
|
| 193 | - * CSV, or turns them off entirely. Use the class constants |
|
| 194 | - * to ensure the value is correct. |
|
| 195 | - * |
|
| 196 | - * @param string $position |
|
| 197 | - * @throws CSVHelper_Exception |
|
| 198 | - * @return $this |
|
| 199 | - * |
|
| 200 | - * @see CSVHelper::HEADERS_LEFT |
|
| 201 | - * @see CSVHelper::HEADERS_TOP |
|
| 202 | - * @see CSVHelper::HEADERS_NONE |
|
| 203 | - */ |
|
| 191 | + /** |
|
| 192 | + * Specifies where the headers are positioned in the |
|
| 193 | + * CSV, or turns them off entirely. Use the class constants |
|
| 194 | + * to ensure the value is correct. |
|
| 195 | + * |
|
| 196 | + * @param string $position |
|
| 197 | + * @throws CSVHelper_Exception |
|
| 198 | + * @return $this |
|
| 199 | + * |
|
| 200 | + * @see CSVHelper::HEADERS_LEFT |
|
| 201 | + * @see CSVHelper::HEADERS_TOP |
|
| 202 | + * @see CSVHelper::HEADERS_NONE |
|
| 203 | + */ |
|
| 204 | 204 | public function setHeadersPosition(string $position) : self |
| 205 | 205 | { |
| 206 | 206 | $validPositions = array( |
@@ -227,13 +227,13 @@ discard block |
||
| 227 | 227 | return $this; |
| 228 | 228 | } |
| 229 | 229 | |
| 230 | - /** |
|
| 231 | - * Resets all internal data, allowing to start entirely anew |
|
| 232 | - * with a new file, or to start building a new CSV file from |
|
| 233 | - * scratch. |
|
| 234 | - * |
|
| 235 | - * @return $this |
|
| 236 | - */ |
|
| 230 | + /** |
|
| 231 | + * Resets all internal data, allowing to start entirely anew |
|
| 232 | + * with a new file, or to start building a new CSV file from |
|
| 233 | + * scratch. |
|
| 234 | + * |
|
| 235 | + * @return $this |
|
| 236 | + */ |
|
| 237 | 237 | public function reset() : self |
| 238 | 238 | { |
| 239 | 239 | $this->data = array(); |
@@ -253,81 +253,81 @@ discard block |
||
| 253 | 253 | return $this->data; |
| 254 | 254 | } |
| 255 | 255 | |
| 256 | - /** |
|
| 257 | - * Retrieves the row at the specified index. |
|
| 258 | - * If there is no data at the index, this will |
|
| 259 | - * return an array populated with empty strings |
|
| 260 | - * for all available columns. |
|
| 261 | - * |
|
| 262 | - * Tip: Use the {@link rowExists()} method to check |
|
| 263 | - * whether the specified row exists. |
|
| 264 | - * |
|
| 265 | - * @param integer $index |
|
| 266 | - * @return array<int,mixed> |
|
| 267 | - * @see rowExists() |
|
| 268 | - */ |
|
| 256 | + /** |
|
| 257 | + * Retrieves the row at the specified index. |
|
| 258 | + * If there is no data at the index, this will |
|
| 259 | + * return an array populated with empty strings |
|
| 260 | + * for all available columns. |
|
| 261 | + * |
|
| 262 | + * Tip: Use the {@link rowExists()} method to check |
|
| 263 | + * whether the specified row exists. |
|
| 264 | + * |
|
| 265 | + * @param integer $index |
|
| 266 | + * @return array<int,mixed> |
|
| 267 | + * @see rowExists() |
|
| 268 | + */ |
|
| 269 | 269 | public function getRow(int $index) : array |
| 270 | 270 | { |
| 271 | 271 | return $this->data[$index] ?? array_fill(0, $this->rowCount, ''); |
| 272 | 272 | } |
| 273 | 273 | |
| 274 | - /** |
|
| 275 | - * Checks whether the specified row exists in the data set. |
|
| 276 | - * @param integer $index |
|
| 277 | - * @return boolean |
|
| 278 | - */ |
|
| 274 | + /** |
|
| 275 | + * Checks whether the specified row exists in the data set. |
|
| 276 | + * @param integer $index |
|
| 277 | + * @return boolean |
|
| 278 | + */ |
|
| 279 | 279 | public function rowExists(int $index) : bool |
| 280 | 280 | { |
| 281 | 281 | return isset($this->data[$index]); |
| 282 | 282 | } |
| 283 | 283 | |
| 284 | - /** |
|
| 285 | - * Counts the amount of rows in the parsed CSV, |
|
| 286 | - * excluding the headers if any, depending on |
|
| 287 | - * their position. |
|
| 288 | - * |
|
| 289 | - * @return integer |
|
| 290 | - */ |
|
| 284 | + /** |
|
| 285 | + * Counts the amount of rows in the parsed CSV, |
|
| 286 | + * excluding the headers if any, depending on |
|
| 287 | + * their position. |
|
| 288 | + * |
|
| 289 | + * @return integer |
|
| 290 | + */ |
|
| 291 | 291 | public function countRows() : int |
| 292 | 292 | { |
| 293 | 293 | return $this->rowCount; |
| 294 | 294 | } |
| 295 | 295 | |
| 296 | - /** |
|
| 297 | - * Counts the amount of rows in the parsed CSV, |
|
| 298 | - * excluding the headers if any, depending on |
|
| 299 | - * their position. |
|
| 300 | - * |
|
| 301 | - * @return integer |
|
| 302 | - */ |
|
| 296 | + /** |
|
| 297 | + * Counts the amount of rows in the parsed CSV, |
|
| 298 | + * excluding the headers if any, depending on |
|
| 299 | + * their position. |
|
| 300 | + * |
|
| 301 | + * @return integer |
|
| 302 | + */ |
|
| 303 | 303 | public function countColumns() : int |
| 304 | 304 | { |
| 305 | 305 | return $this->columnCount; |
| 306 | 306 | } |
| 307 | 307 | |
| 308 | - /** |
|
| 309 | - * Retrieves the headers, if any. Specify the position of the |
|
| 310 | - * headers first to ensure this works correctly. |
|
| 311 | - * |
|
| 312 | - * @return string[] Indexed array with header names. |
|
| 313 | - */ |
|
| 308 | + /** |
|
| 309 | + * Retrieves the headers, if any. Specify the position of the |
|
| 310 | + * headers first to ensure this works correctly. |
|
| 311 | + * |
|
| 312 | + * @return string[] Indexed array with header names. |
|
| 313 | + */ |
|
| 314 | 314 | public function getHeaders() : array |
| 315 | 315 | { |
| 316 | 316 | return $this->headers; |
| 317 | 317 | } |
| 318 | 318 | |
| 319 | - /** |
|
| 320 | - * Retrieves the column at the specified index. If there |
|
| 321 | - * is no column at the index, this returns an array |
|
| 322 | - * populated with empty strings. |
|
| 323 | - * |
|
| 324 | - * Tip: Use the {@link columnExists()} method to check |
|
| 325 | - * whether a column exists. |
|
| 326 | - * |
|
| 327 | - * @param integer $index |
|
| 328 | - * @return string[] |
|
| 329 | - * @see columnExists() |
|
| 330 | - */ |
|
| 319 | + /** |
|
| 320 | + * Retrieves the column at the specified index. If there |
|
| 321 | + * is no column at the index, this returns an array |
|
| 322 | + * populated with empty strings. |
|
| 323 | + * |
|
| 324 | + * Tip: Use the {@link columnExists()} method to check |
|
| 325 | + * whether a column exists. |
|
| 326 | + * |
|
| 327 | + * @param integer $index |
|
| 328 | + * @return string[] |
|
| 329 | + * @see columnExists() |
|
| 330 | + */ |
|
| 331 | 331 | public function getColumn(int $index) : array |
| 332 | 332 | { |
| 333 | 333 | $data = array(); |
@@ -342,11 +342,11 @@ discard block |
||
| 342 | 342 | return $data; |
| 343 | 343 | } |
| 344 | 344 | |
| 345 | - /** |
|
| 346 | - * Checks whether the specified column exists in the data set. |
|
| 347 | - * @param integer $index |
|
| 348 | - * @return boolean |
|
| 349 | - */ |
|
| 345 | + /** |
|
| 346 | + * Checks whether the specified column exists in the data set. |
|
| 347 | + * @param integer $index |
|
| 348 | + * @return boolean |
|
| 349 | + */ |
|
| 350 | 350 | public function columnExists(int $index) : bool |
| 351 | 351 | { |
| 352 | 352 | return $index < $this->columnCount; |
@@ -406,22 +406,22 @@ discard block |
||
| 406 | 406 | } |
| 407 | 407 | } |
| 408 | 408 | |
| 409 | - /** |
|
| 410 | - * Checks whether any errors have been encountered |
|
| 411 | - * while parsing the CSV. |
|
| 412 | - * |
|
| 413 | - * @return boolean |
|
| 414 | - * @see getErrorMessages() |
|
| 415 | - */ |
|
| 409 | + /** |
|
| 410 | + * Checks whether any errors have been encountered |
|
| 411 | + * while parsing the CSV. |
|
| 412 | + * |
|
| 413 | + * @return boolean |
|
| 414 | + * @see getErrorMessages() |
|
| 415 | + */ |
|
| 416 | 416 | public function hasErrors() : bool |
| 417 | 417 | { |
| 418 | 418 | return !empty($this->errors); |
| 419 | 419 | } |
| 420 | 420 | |
| 421 | - /** |
|
| 422 | - * Retrieves all error messages. |
|
| 423 | - * @return string[] |
|
| 424 | - */ |
|
| 421 | + /** |
|
| 422 | + * Retrieves all error messages. |
|
| 423 | + * @return string[] |
|
| 424 | + */ |
|
| 425 | 425 | public function getErrorMessages() : array |
| 426 | 426 | { |
| 427 | 427 | return $this->errors; |
@@ -43,13 +43,13 @@ discard block |
||
| 43 | 43 | ); |
| 44 | 44 | } |
| 45 | 45 | |
| 46 | - /** |
|
| 47 | - * Whether to verify the host's SSL certificate, in |
|
| 48 | - * case of a https connection. |
|
| 49 | - * |
|
| 50 | - * @param bool $verifySSL |
|
| 51 | - * @return URIConnectionTester |
|
| 52 | - */ |
|
| 46 | + /** |
|
| 47 | + * Whether to verify the host's SSL certificate, in |
|
| 48 | + * case of a https connection. |
|
| 49 | + * |
|
| 50 | + * @param bool $verifySSL |
|
| 51 | + * @return URIConnectionTester |
|
| 52 | + */ |
|
| 53 | 53 | public function setVerifySSL(bool $verifySSL=true) : URIConnectionTester |
| 54 | 54 | { |
| 55 | 55 | $this->setOption('verify-ssl', $verifySSL); |
@@ -83,9 +83,9 @@ discard block |
||
| 83 | 83 | return $this->getIntOption('timeout'); |
| 84 | 84 | } |
| 85 | 85 | |
| 86 | - /** |
|
| 87 | - * @param resource|CurlHandle $ch |
|
| 88 | - */ |
|
| 86 | + /** |
|
| 87 | + * @param resource|CurlHandle $ch |
|
| 88 | + */ |
|
| 89 | 89 | private function configureOptions($ch) : void |
| 90 | 90 | { |
| 91 | 91 | if($this->isVerboseModeEnabled()) |
@@ -46,19 +46,19 @@ discard block |
||
| 46 | 46 | protected int $contentLength = 0; |
| 47 | 47 | |
| 48 | 48 | /** |
| 49 | - * @var array<string,string> |
|
| 50 | - */ |
|
| 49 | + * @var array<string,string> |
|
| 50 | + */ |
|
| 51 | 51 | protected $headers = array(); |
| 52 | 52 | |
| 53 | - /** |
|
| 54 | - * @var resource|NULL |
|
| 55 | - */ |
|
| 53 | + /** |
|
| 54 | + * @var resource|NULL |
|
| 55 | + */ |
|
| 56 | 56 | protected $logfilePointer; |
| 57 | 57 | |
| 58 | - /** |
|
| 59 | - * Creates a new request helper to send POST data to the specified destination URL. |
|
| 60 | - * @param string $destinationURL |
|
| 61 | - */ |
|
| 58 | + /** |
|
| 59 | + * Creates a new request helper to send POST data to the specified destination URL. |
|
| 60 | + * @param string $destinationURL |
|
| 61 | + */ |
|
| 62 | 62 | public function __construct(string $destinationURL) |
| 63 | 63 | { |
| 64 | 64 | $this->destination = $destinationURL; |
@@ -81,13 +81,13 @@ discard block |
||
| 81 | 81 | return $this->eol; |
| 82 | 82 | } |
| 83 | 83 | |
| 84 | - /** |
|
| 85 | - * Sets the timeout for the request, in seconds. If the request |
|
| 86 | - * takes longer, it will be cancelled and an exception triggered. |
|
| 87 | - * |
|
| 88 | - * @param int $seconds |
|
| 89 | - * @return RequestHelper |
|
| 90 | - */ |
|
| 84 | + /** |
|
| 85 | + * Sets the timeout for the request, in seconds. If the request |
|
| 86 | + * takes longer, it will be cancelled and an exception triggered. |
|
| 87 | + * |
|
| 88 | + * @param int $seconds |
|
| 89 | + * @return RequestHelper |
|
| 90 | + */ |
|
| 91 | 91 | public function setTimeout(int $seconds) : RequestHelper |
| 92 | 92 | { |
| 93 | 93 | $this->timeout = $seconds; |
@@ -100,13 +100,13 @@ discard block |
||
| 100 | 100 | return $this->timeout; |
| 101 | 101 | } |
| 102 | 102 | |
| 103 | - /** |
|
| 104 | - * Enables verbose logging of the CURL request, which |
|
| 105 | - * is then redirected to the target file. |
|
| 106 | - * |
|
| 107 | - * @param string $targetFile |
|
| 108 | - * @return RequestHelper |
|
| 109 | - */ |
|
| 103 | + /** |
|
| 104 | + * Enables verbose logging of the CURL request, which |
|
| 105 | + * is then redirected to the target file. |
|
| 106 | + * |
|
| 107 | + * @param string $targetFile |
|
| 108 | + * @return RequestHelper |
|
| 109 | + */ |
|
| 110 | 110 | public function enableLogging(string $targetFile) : RequestHelper |
| 111 | 111 | { |
| 112 | 112 | $this->logfile = $targetFile; |
@@ -114,15 +114,15 @@ discard block |
||
| 114 | 114 | return $this; |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | - /** |
|
| 118 | - * Adds a file to be sent with the request. |
|
| 119 | - * |
|
| 120 | - * @param string $varName The variable name to send the file in |
|
| 121 | - * @param string $fileName The name of the file as it should be received at the destination |
|
| 122 | - * @param string $content The raw content of the file |
|
| 123 | - * @param string $contentType The content type, use the constants to specify this |
|
| 124 | - * @param string $encoding The encoding of the file, use the constants to specify this |
|
| 125 | - */ |
|
| 117 | + /** |
|
| 118 | + * Adds a file to be sent with the request. |
|
| 119 | + * |
|
| 120 | + * @param string $varName The variable name to send the file in |
|
| 121 | + * @param string $fileName The name of the file as it should be received at the destination |
|
| 122 | + * @param string $content The raw content of the file |
|
| 123 | + * @param string $contentType The content type, use the constants to specify this |
|
| 124 | + * @param string $encoding The encoding of the file, use the constants to specify this |
|
| 125 | + */ |
|
| 126 | 126 | public function addFile(string $varName, string $fileName, string $content, string $contentType = '', string $encoding = '') : RequestHelper |
| 127 | 127 | { |
| 128 | 128 | $this->boundaries->addFile($varName, $fileName, $content, $contentType, $encoding); |
@@ -160,13 +160,13 @@ discard block |
||
| 160 | 160 | return $this; |
| 161 | 161 | } |
| 162 | 162 | |
| 163 | - /** |
|
| 164 | - * Sets an HTTP header to include in the request. |
|
| 165 | - * |
|
| 166 | - * @param string $name |
|
| 167 | - * @param string $value |
|
| 168 | - * @return RequestHelper |
|
| 169 | - */ |
|
| 163 | + /** |
|
| 164 | + * Sets an HTTP header to include in the request. |
|
| 165 | + * |
|
| 166 | + * @param string $name |
|
| 167 | + * @param string $value |
|
| 168 | + * @return RequestHelper |
|
| 169 | + */ |
|
| 170 | 170 | public function setHeader(string $name, string $value) : RequestHelper |
| 171 | 171 | { |
| 172 | 172 | $this->headers[$name] = $value; |
@@ -174,31 +174,31 @@ discard block |
||
| 174 | 174 | return $this; |
| 175 | 175 | } |
| 176 | 176 | |
| 177 | - /** |
|
| 178 | - * Disables SSL certificate checking. |
|
| 179 | - * |
|
| 180 | - * @return RequestHelper |
|
| 181 | - */ |
|
| 177 | + /** |
|
| 178 | + * Disables SSL certificate checking. |
|
| 179 | + * |
|
| 180 | + * @return RequestHelper |
|
| 181 | + */ |
|
| 182 | 182 | public function disableSSLChecks() : RequestHelper |
| 183 | 183 | { |
| 184 | 184 | $this->verifySSL = false; |
| 185 | 185 | return $this; |
| 186 | 186 | } |
| 187 | 187 | |
| 188 | - /** |
|
| 189 | - * Sends the POST request to the destination, and returns |
|
| 190 | - * the response text. |
|
| 191 | - * |
|
| 192 | - * The response object is stored internally, so after calling |
|
| 193 | - * this method it may be retrieved at any moment using the |
|
| 194 | - * {@link getResponse()} method. |
|
| 195 | - * |
|
| 196 | - * @return string |
|
| 197 | - * @see RequestHelper::getResponse() |
|
| 198 | - * @throws RequestHelper_Exception |
|
| 199 | - * |
|
| 200 | - * @see RequestHelper::ERROR_REQUEST_FAILED |
|
| 201 | - */ |
|
| 188 | + /** |
|
| 189 | + * Sends the POST request to the destination, and returns |
|
| 190 | + * the response text. |
|
| 191 | + * |
|
| 192 | + * The response object is stored internally, so after calling |
|
| 193 | + * this method it may be retrieved at any moment using the |
|
| 194 | + * {@link getResponse()} method. |
|
| 195 | + * |
|
| 196 | + * @return string |
|
| 197 | + * @see RequestHelper::getResponse() |
|
| 198 | + * @throws RequestHelper_Exception |
|
| 199 | + * |
|
| 200 | + * @see RequestHelper::ERROR_REQUEST_FAILED |
|
| 201 | + */ |
|
| 202 | 202 | public function send() : string |
| 203 | 203 | { |
| 204 | 204 | $info = parseURL($this->destination); |
@@ -238,13 +238,13 @@ discard block |
||
| 238 | 238 | return $this->response->getResponseBody(); |
| 239 | 239 | } |
| 240 | 240 | |
| 241 | - /** |
|
| 242 | - * Retrieves the request's body content. This is an alias |
|
| 243 | - * for {@see RequestHelper::getMimeBody()}. |
|
| 244 | - * |
|
| 245 | - * @return string |
|
| 246 | - * @see RequestHelper::getMimeBody() |
|
| 247 | - */ |
|
| 241 | + /** |
|
| 242 | + * Retrieves the request's body content. This is an alias |
|
| 243 | + * for {@see RequestHelper::getMimeBody()}. |
|
| 244 | + * |
|
| 245 | + * @return string |
|
| 246 | + * @see RequestHelper::getMimeBody() |
|
| 247 | + */ |
|
| 248 | 248 | public function getBody() : string |
| 249 | 249 | { |
| 250 | 250 | return $this->getMimeBody(); |
@@ -276,14 +276,14 @@ discard block |
||
| 276 | 276 | ); |
| 277 | 277 | } |
| 278 | 278 | |
| 279 | - /** |
|
| 280 | - * Creates a new CURL resource configured according to the |
|
| 281 | - * request's settings. |
|
| 282 | - * |
|
| 283 | - * @param URLInfo $url |
|
| 284 | - * @throws RequestHelper_Exception |
|
| 285 | - * @return resource |
|
| 286 | - */ |
|
| 279 | + /** |
|
| 280 | + * Creates a new CURL resource configured according to the |
|
| 281 | + * request's settings. |
|
| 282 | + * |
|
| 283 | + * @param URLInfo $url |
|
| 284 | + * @throws RequestHelper_Exception |
|
| 285 | + * @return resource |
|
| 286 | + */ |
|
| 287 | 287 | protected function configureCURL(URLInfo $url) |
| 288 | 288 | { |
| 289 | 289 | $ch = self::createCURL(); |
@@ -353,13 +353,13 @@ discard block |
||
| 353 | 353 | return true; |
| 354 | 354 | } |
| 355 | 355 | |
| 356 | - /** |
|
| 357 | - * Compiles the associative headers array into |
|
| 358 | - * the format understood by CURL, namely an indexed |
|
| 359 | - * array with one header string per entry. |
|
| 360 | - * |
|
| 361 | - * @return string[] |
|
| 362 | - */ |
|
| 356 | + /** |
|
| 357 | + * Compiles the associative headers array into |
|
| 358 | + * the format understood by CURL, namely an indexed |
|
| 359 | + * array with one header string per entry. |
|
| 360 | + * |
|
| 361 | + * @return string[] |
|
| 362 | + */ |
|
| 363 | 363 | protected function renderHeaders() : array |
| 364 | 364 | { |
| 365 | 365 | $result = array(); |
@@ -373,12 +373,12 @@ discard block |
||
| 373 | 373 | return $result; |
| 374 | 374 | } |
| 375 | 375 | |
| 376 | - /** |
|
| 377 | - * Retrieves the raw response header, in the form of an indexed |
|
| 378 | - * array containing all response header lines. |
|
| 379 | - * |
|
| 380 | - * @return string[] |
|
| 381 | - */ |
|
| 376 | + /** |
|
| 377 | + * Retrieves the raw response header, in the form of an indexed |
|
| 378 | + * array containing all response header lines. |
|
| 379 | + * |
|
| 380 | + * @return string[] |
|
| 381 | + */ |
|
| 382 | 382 | public function getResponseHeader() : array |
| 383 | 383 | { |
| 384 | 384 | $response = $this->getResponse(); |
@@ -390,33 +390,33 @@ discard block |
||
| 390 | 390 | return array(); |
| 391 | 391 | } |
| 392 | 392 | |
| 393 | - /** |
|
| 394 | - * After calling the {@link send()} method, this may be used to |
|
| 395 | - * retrieve the response text from the POST request. |
|
| 396 | - * |
|
| 397 | - * @return RequestHelper_Response|NULL |
|
| 398 | - */ |
|
| 393 | + /** |
|
| 394 | + * After calling the {@link send()} method, this may be used to |
|
| 395 | + * retrieve the response text from the POST request. |
|
| 396 | + * |
|
| 397 | + * @return RequestHelper_Response|NULL |
|
| 398 | + */ |
|
| 399 | 399 | public function getResponse() : ?RequestHelper_Response |
| 400 | 400 | { |
| 401 | 401 | return $this->response; |
| 402 | 402 | } |
| 403 | 403 | |
| 404 | - /** |
|
| 405 | - * Retrieves all headers set until now. |
|
| 406 | - * |
|
| 407 | - * @return array<string,string> |
|
| 408 | - */ |
|
| 404 | + /** |
|
| 405 | + * Retrieves all headers set until now. |
|
| 406 | + * |
|
| 407 | + * @return array<string,string> |
|
| 408 | + */ |
|
| 409 | 409 | public function getHeaders() : array |
| 410 | 410 | { |
| 411 | 411 | return $this->headers; |
| 412 | 412 | } |
| 413 | 413 | |
| 414 | - /** |
|
| 415 | - * Retrieves the value of a header by its name. |
|
| 416 | - * |
|
| 417 | - * @param string $name |
|
| 418 | - * @return string The header value, or an empty string if not set. |
|
| 419 | - */ |
|
| 414 | + /** |
|
| 415 | + * Retrieves the value of a header by its name. |
|
| 416 | + * |
|
| 417 | + * @param string $name |
|
| 418 | + * @return string The header value, or an empty string if not set. |
|
| 419 | + */ |
|
| 420 | 420 | public function getHeader(string $name) : string |
| 421 | 421 | { |
| 422 | 422 | return $this->headers[$name] ?? ''; |
@@ -73,13 +73,13 @@ discard block |
||
| 73 | 73 | protected array $colors = array(); |
| 74 | 74 | |
| 75 | 75 | /** |
| 76 | - * @var resource|NULL |
|
| 77 | - */ |
|
| 76 | + * @var resource|NULL |
|
| 77 | + */ |
|
| 78 | 78 | protected $newImage; |
| 79 | 79 | |
| 80 | - /** |
|
| 81 | - * @var resource |
|
| 82 | - */ |
|
| 80 | + /** |
|
| 81 | + * @var resource |
|
| 82 | + */ |
|
| 83 | 83 | protected $sourceImage; |
| 84 | 84 | |
| 85 | 85 | /** |
@@ -188,17 +188,17 @@ discard block |
||
| 188 | 188 | } |
| 189 | 189 | } |
| 190 | 190 | |
| 191 | - /** |
|
| 192 | - * Factory method: creates a new helper with a blank image. |
|
| 193 | - * |
|
| 194 | - * @param integer $width |
|
| 195 | - * @param integer $height |
|
| 196 | - * @param string $type The target file type when saving |
|
| 197 | - * @return ImageHelper |
|
| 198 | - * @throws ImageHelper_Exception |
|
| 199 | - * |
|
| 200 | - * @see ImageHelper::ERROR_CANNOT_CREATE_IMAGE_OBJECT |
|
| 201 | - */ |
|
| 191 | + /** |
|
| 192 | + * Factory method: creates a new helper with a blank image. |
|
| 193 | + * |
|
| 194 | + * @param integer $width |
|
| 195 | + * @param integer $height |
|
| 196 | + * @param string $type The target file type when saving |
|
| 197 | + * @return ImageHelper |
|
| 198 | + * @throws ImageHelper_Exception |
|
| 199 | + * |
|
| 200 | + * @see ImageHelper::ERROR_CANNOT_CREATE_IMAGE_OBJECT |
|
| 201 | + */ |
|
| 202 | 202 | public static function createNew(int $width, int $height, string $type='png') : self |
| 203 | 203 | { |
| 204 | 204 | $img = imagecreatetruecolor($width, $height); |
@@ -249,17 +249,17 @@ discard block |
||
| 249 | 249 | return new ImageHelper($file, null, self::getFileImageType($file)); |
| 250 | 250 | } |
| 251 | 251 | |
| 252 | - /** |
|
| 253 | - * Sets a global image helper configuration value. Available |
|
| 254 | - * configuration settings are: |
|
| 255 | - * |
|
| 256 | - * <ul> |
|
| 257 | - * <li><code>auto-memory-adjustment</code> <i>boolean</i> Whether to try and adjust the memory limit automatically so there will be enough to load/process the target image.</li> |
|
| 258 | - * </ul> |
|
| 259 | - * |
|
| 260 | - * @param string $name |
|
| 261 | - * @param mixed|NULL $value |
|
| 262 | - */ |
|
| 252 | + /** |
|
| 253 | + * Sets a global image helper configuration value. Available |
|
| 254 | + * configuration settings are: |
|
| 255 | + * |
|
| 256 | + * <ul> |
|
| 257 | + * <li><code>auto-memory-adjustment</code> <i>boolean</i> Whether to try and adjust the memory limit automatically so there will be enough to load/process the target image.</li> |
|
| 258 | + * </ul> |
|
| 259 | + * |
|
| 260 | + * @param string $name |
|
| 261 | + * @param mixed|NULL $value |
|
| 262 | + */ |
|
| 263 | 263 | public static function setConfig(string $name, $value) : void |
| 264 | 264 | { |
| 265 | 265 | if(isset(self::$config[$name])) { |
@@ -267,13 +267,13 @@ discard block |
||
| 267 | 267 | } |
| 268 | 268 | } |
| 269 | 269 | |
| 270 | - /** |
|
| 271 | - * Shorthand for setting the automatic memory adjustment |
|
| 272 | - * global configuration setting. |
|
| 273 | - * |
|
| 274 | - * @param bool $enabled |
|
| 275 | - * @return void |
|
| 276 | - */ |
|
| 270 | + /** |
|
| 271 | + * Shorthand for setting the automatic memory adjustment |
|
| 272 | + * global configuration setting. |
|
| 273 | + * |
|
| 274 | + * @param bool $enabled |
|
| 275 | + * @return void |
|
| 276 | + */ |
|
| 277 | 277 | public static function setAutoMemoryAdjustment(bool $enabled=true) : void |
| 278 | 278 | { |
| 279 | 279 | self::setConfig('auto-memory-adjustment', $enabled); |
@@ -747,12 +747,12 @@ discard block |
||
| 747 | 747 | return $this; |
| 748 | 748 | } |
| 749 | 749 | |
| 750 | - /** |
|
| 751 | - * Attempts to adjust the memory to the required size |
|
| 752 | - * to work with the current image. |
|
| 753 | - * |
|
| 754 | - * @return boolean |
|
| 755 | - */ |
|
| 750 | + /** |
|
| 751 | + * Attempts to adjust the memory to the required size |
|
| 752 | + * to work with the current image. |
|
| 753 | + * |
|
| 754 | + * @return boolean |
|
| 755 | + */ |
|
| 756 | 756 | protected function adjustMemory() : bool |
| 757 | 757 | { |
| 758 | 758 | if(!self::$config['auto-memory-adjustment']) { |
@@ -805,15 +805,15 @@ discard block |
||
| 805 | 805 | return $this->resampleImage($width, $height); |
| 806 | 806 | } |
| 807 | 807 | |
| 808 | - /** |
|
| 809 | - * Creates a new image from the current image, |
|
| 810 | - * resampling it to the new size. |
|
| 811 | - * |
|
| 812 | - * @param int $newWidth |
|
| 813 | - * @param int $newHeight |
|
| 814 | - * @throws ImageHelper_Exception |
|
| 815 | - * @return ImageHelper |
|
| 816 | - */ |
|
| 808 | + /** |
|
| 809 | + * Creates a new image from the current image, |
|
| 810 | + * resampling it to the new size. |
|
| 811 | + * |
|
| 812 | + * @param int $newWidth |
|
| 813 | + * @param int $newHeight |
|
| 814 | + * @throws ImageHelper_Exception |
|
| 815 | + * @return ImageHelper |
|
| 816 | + */ |
|
| 817 | 817 | protected function resampleImage(int $newWidth, int $newHeight) : ImageHelper |
| 818 | 818 | { |
| 819 | 819 | if($this->isVector()) { |
@@ -885,17 +885,17 @@ discard block |
||
| 885 | 885 | return array_unique($types); |
| 886 | 886 | } |
| 887 | 887 | |
| 888 | - /** |
|
| 889 | - * Displays an existing image resource. |
|
| 890 | - * |
|
| 891 | - * @param resource $resource |
|
| 892 | - * @param string $imageType The image format to send, i.e. "jpeg", "png" |
|
| 893 | - * @param int $quality The quality to use for the image. This is 0-9 (0=no compression, 9=max) for PNG, and 0-100 (0=lowest, 100=highest quality) for JPG |
|
| 894 | - * |
|
| 895 | - * @throws ImageHelper_Exception |
|
| 896 | - * @see ImageHelper::ERROR_NOT_A_RESOURCE |
|
| 897 | - * @see ImageHelper::ERROR_INVALID_STREAM_IMAGE_TYPE |
|
| 898 | - */ |
|
| 888 | + /** |
|
| 889 | + * Displays an existing image resource. |
|
| 890 | + * |
|
| 891 | + * @param resource $resource |
|
| 892 | + * @param string $imageType The image format to send, i.e. "jpeg", "png" |
|
| 893 | + * @param int $quality The quality to use for the image. This is 0-9 (0=no compression, 9=max) for PNG, and 0-100 (0=lowest, 100=highest quality) for JPG |
|
| 894 | + * |
|
| 895 | + * @throws ImageHelper_Exception |
|
| 896 | + * @see ImageHelper::ERROR_NOT_A_RESOURCE |
|
| 897 | + * @see ImageHelper::ERROR_INVALID_STREAM_IMAGE_TYPE |
|
| 898 | + */ |
|
| 899 | 899 | public static function displayImageStream($resource, string $imageType, int $quality=-1) : void |
| 900 | 900 | { |
| 901 | 901 | self::requireResource($resource); |
@@ -979,11 +979,11 @@ discard block |
||
| 979 | 979 | readfile($imageFile); |
| 980 | 980 | } |
| 981 | 981 | |
| 982 | - /** |
|
| 983 | - * Displays the current image. |
|
| 984 | - * |
|
| 985 | - * NOTE: You must call `exit()` manually after this. |
|
| 986 | - */ |
|
| 982 | + /** |
|
| 983 | + * Displays the current image. |
|
| 984 | + * |
|
| 985 | + * NOTE: You must call `exit()` manually after this. |
|
| 986 | + */ |
|
| 987 | 987 | public function display() : void |
| 988 | 988 | { |
| 989 | 989 | self::displayImageStream( |
@@ -1097,14 +1097,14 @@ discard block |
||
| 1097 | 1097 | return $this; |
| 1098 | 1098 | } |
| 1099 | 1099 | |
| 1100 | - /** |
|
| 1101 | - * Requires the subject to be a resource. |
|
| 1102 | - * |
|
| 1103 | - * @param resource|GdImage|mixed $subject |
|
| 1104 | - * |
|
| 1105 | - * @throws ImageHelper_Exception |
|
| 1106 | - * @see ImageHelper::ERROR_NOT_A_RESOURCE |
|
| 1107 | - */ |
|
| 1100 | + /** |
|
| 1101 | + * Requires the subject to be a resource. |
|
| 1102 | + * |
|
| 1103 | + * @param resource|GdImage|mixed $subject |
|
| 1104 | + * |
|
| 1105 | + * @throws ImageHelper_Exception |
|
| 1106 | + * @see ImageHelper::ERROR_NOT_A_RESOURCE |
|
| 1107 | + */ |
|
| 1108 | 1108 | public static function requireResource($subject) : void |
| 1109 | 1109 | { |
| 1110 | 1110 | if(is_resource($subject) && imagesx($subject)) { |
@@ -1125,14 +1125,14 @@ discard block |
||
| 1125 | 1125 | ); |
| 1126 | 1126 | } |
| 1127 | 1127 | |
| 1128 | - /** |
|
| 1129 | - * Creates a new image resource, with transparent background. |
|
| 1130 | - * |
|
| 1131 | - * @param int $width |
|
| 1132 | - * @param int $height |
|
| 1133 | - * @throws ImageHelper_Exception |
|
| 1134 | - * @return resource |
|
| 1135 | - */ |
|
| 1128 | + /** |
|
| 1129 | + * Creates a new image resource, with transparent background. |
|
| 1130 | + * |
|
| 1131 | + * @param int $width |
|
| 1132 | + * @param int $height |
|
| 1133 | + * @throws ImageHelper_Exception |
|
| 1134 | + * @return resource |
|
| 1135 | + */ |
|
| 1136 | 1136 | public function createNewImage(int $width, int $height) |
| 1137 | 1137 | { |
| 1138 | 1138 | $img = imagecreatetruecolor($width, $height); |
@@ -1156,38 +1156,38 @@ discard block |
||
| 1156 | 1156 | * @param int $y |
| 1157 | 1157 | * @return $this |
| 1158 | 1158 | */ |
| 1159 | - public function fillWhite(int $x=0, int $y=0) : self |
|
| 1160 | - { |
|
| 1161 | - $this->addRGBColor('white', 255, 255, 255); |
|
| 1159 | + public function fillWhite(int $x=0, int $y=0) : self |
|
| 1160 | + { |
|
| 1161 | + $this->addRGBColor('white', 255, 255, 255); |
|
| 1162 | 1162 | return $this->fill('white', $x, $y); |
| 1163 | - } |
|
| 1163 | + } |
|
| 1164 | 1164 | |
| 1165 | 1165 | /** |
| 1166 | 1166 | * @return $this |
| 1167 | 1167 | * @throws ImageHelper_Exception |
| 1168 | 1168 | */ |
| 1169 | - public function fillTransparent() : self |
|
| 1170 | - { |
|
| 1169 | + public function fillTransparent() : self |
|
| 1170 | + { |
|
| 1171 | 1171 | $this->enableAlpha(); |
| 1172 | 1172 | |
| 1173 | - self::fillImageTransparent($this->newImage); |
|
| 1173 | + self::fillImageTransparent($this->newImage); |
|
| 1174 | 1174 | |
| 1175 | - return $this; |
|
| 1176 | - } |
|
| 1175 | + return $this; |
|
| 1176 | + } |
|
| 1177 | 1177 | |
| 1178 | 1178 | /** |
| 1179 | 1179 | * @param resource $resource |
| 1180 | 1180 | * @return void |
| 1181 | 1181 | * @throws ImageHelper_Exception |
| 1182 | 1182 | */ |
| 1183 | - public static function fillImageTransparent($resource) : void |
|
| 1184 | - { |
|
| 1185 | - self::requireResource($resource); |
|
| 1183 | + public static function fillImageTransparent($resource) : void |
|
| 1184 | + { |
|
| 1185 | + self::requireResource($resource); |
|
| 1186 | 1186 | |
| 1187 | - $transparent = imagecolorallocatealpha($resource, 89, 14, 207, 127); |
|
| 1188 | - imagecolortransparent ($resource, $transparent); |
|
| 1189 | - imagefill($resource, 0, 0, $transparent); |
|
| 1190 | - } |
|
| 1187 | + $transparent = imagecolorallocatealpha($resource, 89, 14, 207, 127); |
|
| 1188 | + imagecolortransparent ($resource, $transparent); |
|
| 1189 | + imagefill($resource, 0, 0, $transparent); |
|
| 1190 | + } |
|
| 1191 | 1191 | |
| 1192 | 1192 | /** |
| 1193 | 1193 | * @param string $colorName |
@@ -1195,11 +1195,11 @@ discard block |
||
| 1195 | 1195 | * @param int $y |
| 1196 | 1196 | * @return $this |
| 1197 | 1197 | */ |
| 1198 | - public function fill(string $colorName, int $x=0, int $y=0) : self |
|
| 1199 | - { |
|
| 1200 | - imagefill($this->newImage, $x, $y, $this->colors[$colorName]); |
|
| 1201 | - return $this; |
|
| 1202 | - } |
|
| 1198 | + public function fill(string $colorName, int $x=0, int $y=0) : self |
|
| 1199 | + { |
|
| 1200 | + imagefill($this->newImage, $x, $y, $this->colors[$colorName]); |
|
| 1201 | + return $this; |
|
| 1202 | + } |
|
| 1203 | 1203 | |
| 1204 | 1204 | /** |
| 1205 | 1205 | * @param string $name |
@@ -1243,9 +1243,9 @@ discard block |
||
| 1243 | 1243 | return $this; |
| 1244 | 1244 | } |
| 1245 | 1245 | |
| 1246 | - /** |
|
| 1247 | - * @return resource |
|
| 1248 | - */ |
|
| 1246 | + /** |
|
| 1247 | + * @return resource |
|
| 1248 | + */ |
|
| 1249 | 1249 | public function getImage() |
| 1250 | 1250 | { |
| 1251 | 1251 | return $this->newImage; |
@@ -1293,17 +1293,17 @@ discard block |
||
| 1293 | 1293 | * |
| 1294 | 1294 | * @see ImageHelper::ERROR_CANNOT_GET_IMAGE_SIZE |
| 1295 | 1295 | */ |
| 1296 | - public function getSize() : ImageHelper_Size |
|
| 1296 | + public function getSize() : ImageHelper_Size |
|
| 1297 | 1297 | { |
| 1298 | - return self::getImageSize($this->newImage); |
|
| 1298 | + return self::getImageSize($this->newImage); |
|
| 1299 | 1299 | } |
| 1300 | 1300 | |
| 1301 | - /** |
|
| 1302 | - * Sets the TTF font file to use for text operations. |
|
| 1303 | - * |
|
| 1304 | - * @param string $filePath |
|
| 1305 | - * @return $this |
|
| 1306 | - */ |
|
| 1301 | + /** |
|
| 1302 | + * Sets the TTF font file to use for text operations. |
|
| 1303 | + * |
|
| 1304 | + * @param string $filePath |
|
| 1305 | + * @return $this |
|
| 1306 | + */ |
|
| 1307 | 1307 | public function setFontTTF(string $filePath) : self |
| 1308 | 1308 | { |
| 1309 | 1309 | $this->TTFFile = $filePath; |
@@ -1381,7 +1381,7 @@ discard block |
||
| 1381 | 1381 | return; |
| 1382 | 1382 | } |
| 1383 | 1383 | |
| 1384 | - throw new ImageHelper_Exception( |
|
| 1384 | + throw new ImageHelper_Exception( |
|
| 1385 | 1385 | 'No true type font specified', |
| 1386 | 1386 | 'This functionality requires a TTF font file to be specified with the [setFontTTF] method.', |
| 1387 | 1387 | self::ERROR_NO_TRUE_TYPE_FONT_SET |
@@ -1404,37 +1404,37 @@ discard block |
||
| 1404 | 1404 | * @see ImageHelper::ERROR_SVG_SOURCE_VIEWBOX_MISSING |
| 1405 | 1405 | * @see ImageHelper::ERROR_SVG_VIEWBOX_INVALID |
| 1406 | 1406 | */ |
| 1407 | - public static function getImageSize($pathOrResource) : ImageHelper_Size |
|
| 1408 | - { |
|
| 1409 | - if(is_resource($pathOrResource) || $pathOrResource instanceof GdImage) |
|
| 1410 | - { |
|
| 1411 | - return new ImageHelper_Size(array( |
|
| 1412 | - 'width' => imagesx($pathOrResource), |
|
| 1413 | - 'height' => imagesy($pathOrResource), |
|
| 1414 | - 'channels' => 1, |
|
| 1415 | - 'bits' => 8 |
|
| 1416 | - )); |
|
| 1417 | - } |
|
| 1407 | + public static function getImageSize($pathOrResource) : ImageHelper_Size |
|
| 1408 | + { |
|
| 1409 | + if(is_resource($pathOrResource) || $pathOrResource instanceof GdImage) |
|
| 1410 | + { |
|
| 1411 | + return new ImageHelper_Size(array( |
|
| 1412 | + 'width' => imagesx($pathOrResource), |
|
| 1413 | + 'height' => imagesy($pathOrResource), |
|
| 1414 | + 'channels' => 1, |
|
| 1415 | + 'bits' => 8 |
|
| 1416 | + )); |
|
| 1417 | + } |
|
| 1418 | 1418 | |
| 1419 | - $type = self::getFileImageType($pathOrResource); |
|
| 1419 | + $type = self::getFileImageType($pathOrResource); |
|
| 1420 | 1420 | |
| 1421 | 1421 | $sizeMethods = array( |
| 1422 | 1422 | 'svg' => array(self::class, 'getImageSize_svg') |
| 1423 | 1423 | ); |
| 1424 | 1424 | |
| 1425 | - if(isset($sizeMethods[$type])) |
|
| 1426 | - { |
|
| 1427 | - return ClassHelper::requireObjectInstanceOf( |
|
| 1425 | + if(isset($sizeMethods[$type])) |
|
| 1426 | + { |
|
| 1427 | + return ClassHelper::requireObjectInstanceOf( |
|
| 1428 | 1428 | ImageHelper_Size::class, |
| 1429 | 1429 | $sizeMethods[$type]($pathOrResource) |
| 1430 | 1430 | ); |
| 1431 | - } |
|
| 1431 | + } |
|
| 1432 | 1432 | |
| 1433 | - $info = getimagesize($pathOrResource); |
|
| 1433 | + $info = getimagesize($pathOrResource); |
|
| 1434 | 1434 | |
| 1435 | - if($info !== false) { |
|
| 1436 | - return new ImageHelper_Size($info); |
|
| 1437 | - } |
|
| 1435 | + if($info !== false) { |
|
| 1436 | + return new ImageHelper_Size($info); |
|
| 1437 | + } |
|
| 1438 | 1438 | |
| 1439 | 1439 | throw new ImageHelper_Exception( |
| 1440 | 1440 | 'Error opening image file', |
@@ -1444,7 +1444,7 @@ discard block |
||
| 1444 | 1444 | ), |
| 1445 | 1445 | self::ERROR_CANNOT_GET_IMAGE_SIZE |
| 1446 | 1446 | ); |
| 1447 | - } |
|
| 1447 | + } |
|
| 1448 | 1448 | |
| 1449 | 1449 | /** |
| 1450 | 1450 | * @param string $imagePath |
@@ -1454,78 +1454,78 @@ discard block |
||
| 1454 | 1454 | * @throws XMLHelper_Exception |
| 1455 | 1455 | * @throws JsonException |
| 1456 | 1456 | */ |
| 1457 | - protected static function getImageSize_svg(string $imagePath) : ImageHelper_Size |
|
| 1458 | - { |
|
| 1459 | - $xml = XMLHelper::createSimplexml(); |
|
| 1460 | - $xml->loadFile($imagePath); |
|
| 1457 | + protected static function getImageSize_svg(string $imagePath) : ImageHelper_Size |
|
| 1458 | + { |
|
| 1459 | + $xml = XMLHelper::createSimplexml(); |
|
| 1460 | + $xml->loadFile($imagePath); |
|
| 1461 | 1461 | |
| 1462 | - if($xml->hasErrors()) { |
|
| 1463 | - throw new ImageHelper_Exception( |
|
| 1464 | - 'Error opening SVG image', |
|
| 1465 | - sprintf( |
|
| 1466 | - 'The XML content of the image [%s] could not be parsed.', |
|
| 1467 | - $imagePath |
|
| 1462 | + if($xml->hasErrors()) { |
|
| 1463 | + throw new ImageHelper_Exception( |
|
| 1464 | + 'Error opening SVG image', |
|
| 1465 | + sprintf( |
|
| 1466 | + 'The XML content of the image [%s] could not be parsed.', |
|
| 1467 | + $imagePath |
|
| 1468 | 1468 | ), |
| 1469 | - self::ERROR_CANNOT_READ_SVG_IMAGE |
|
| 1469 | + self::ERROR_CANNOT_READ_SVG_IMAGE |
|
| 1470 | 1470 | ); |
| 1471 | - } |
|
| 1471 | + } |
|
| 1472 | 1472 | |
| 1473 | - $data = $xml->toArray(); |
|
| 1474 | - $xml->dispose(); |
|
| 1475 | - unset($xml); |
|
| 1473 | + $data = $xml->toArray(); |
|
| 1474 | + $xml->dispose(); |
|
| 1475 | + unset($xml); |
|
| 1476 | 1476 | |
| 1477 | - if(!isset($data['@attributes']['viewBox'])) { |
|
| 1478 | - throw new ImageHelper_Exception( |
|
| 1479 | - 'SVG Image is corrupted', |
|
| 1480 | - sprintf( |
|
| 1481 | - 'The [viewBox] attribute is missing in the XML of the image at path [%s].', |
|
| 1482 | - $imagePath |
|
| 1477 | + if(!isset($data['@attributes']['viewBox'])) { |
|
| 1478 | + throw new ImageHelper_Exception( |
|
| 1479 | + 'SVG Image is corrupted', |
|
| 1480 | + sprintf( |
|
| 1481 | + 'The [viewBox] attribute is missing in the XML of the image at path [%s].', |
|
| 1482 | + $imagePath |
|
| 1483 | 1483 | ), |
| 1484 | - self::ERROR_SVG_SOURCE_VIEWBOX_MISSING |
|
| 1484 | + self::ERROR_SVG_SOURCE_VIEWBOX_MISSING |
|
| 1485 | 1485 | ); |
| 1486 | - } |
|
| 1486 | + } |
|
| 1487 | 1487 | |
| 1488 | - $svgWidth = parseNumber($data['@attributes']['width'])->getNumber(); |
|
| 1489 | - $svgHeight = parseNumber($data['@attributes']['height'])->getNumber(); |
|
| 1488 | + $svgWidth = parseNumber($data['@attributes']['width'])->getNumber(); |
|
| 1489 | + $svgHeight = parseNumber($data['@attributes']['height'])->getNumber(); |
|
| 1490 | 1490 | |
| 1491 | - $viewBox = str_replace(' ', ',', $data['@attributes']['viewBox']); |
|
| 1492 | - $size = explode(',', $viewBox); |
|
| 1491 | + $viewBox = str_replace(' ', ',', $data['@attributes']['viewBox']); |
|
| 1492 | + $size = explode(',', $viewBox); |
|
| 1493 | 1493 | |
| 1494 | - if(count($size) !== 4) |
|
| 1495 | - { |
|
| 1496 | - throw new ImageHelper_Exception( |
|
| 1497 | - 'SVG image has an invalid viewBox attribute', |
|
| 1498 | - sprintf( |
|
| 1499 | - 'The [viewBox] attribute does not have an expected value: [%s] in path [%s].', |
|
| 1500 | - $viewBox, |
|
| 1501 | - $imagePath |
|
| 1494 | + if(count($size) !== 4) |
|
| 1495 | + { |
|
| 1496 | + throw new ImageHelper_Exception( |
|
| 1497 | + 'SVG image has an invalid viewBox attribute', |
|
| 1498 | + sprintf( |
|
| 1499 | + 'The [viewBox] attribute does not have an expected value: [%s] in path [%s].', |
|
| 1500 | + $viewBox, |
|
| 1501 | + $imagePath |
|
| 1502 | 1502 | ), |
| 1503 | - self::ERROR_SVG_VIEWBOX_INVALID |
|
| 1503 | + self::ERROR_SVG_VIEWBOX_INVALID |
|
| 1504 | 1504 | ); |
| 1505 | - } |
|
| 1505 | + } |
|
| 1506 | 1506 | |
| 1507 | - $boxWidth = (float)$size[2]; |
|
| 1508 | - $boxHeight = (float)$size[3]; |
|
| 1507 | + $boxWidth = (float)$size[2]; |
|
| 1508 | + $boxHeight = (float)$size[3]; |
|
| 1509 | 1509 | |
| 1510 | - // calculate the x and y units of the document: |
|
| 1511 | - // @see http://tutorials.jenkov.com/svg/svg-viewport-view-box.html#viewbox |
|
| 1512 | - // |
|
| 1513 | - // The viewbox combined with the width and height of the svg |
|
| 1514 | - // allow calculating how many pixels are in one unit of the |
|
| 1515 | - // width and height of the document. |
|
| 1510 | + // calculate the x and y units of the document: |
|
| 1511 | + // @see http://tutorials.jenkov.com/svg/svg-viewport-view-box.html#viewbox |
|
| 1516 | 1512 | // |
| 1517 | - $xUnits = $svgWidth / $boxWidth; |
|
| 1518 | - $yUnits = $svgHeight / $boxHeight; |
|
| 1513 | + // The viewbox combined with the width and height of the svg |
|
| 1514 | + // allow calculating how many pixels are in one unit of the |
|
| 1515 | + // width and height of the document. |
|
| 1516 | + // |
|
| 1517 | + $xUnits = $svgWidth / $boxWidth; |
|
| 1518 | + $yUnits = $svgHeight / $boxHeight; |
|
| 1519 | 1519 | |
| 1520 | - $pxWidth = $xUnits * $svgWidth; |
|
| 1521 | - $pxHeight = $yUnits * $svgHeight; |
|
| 1520 | + $pxWidth = $xUnits * $svgWidth; |
|
| 1521 | + $pxHeight = $yUnits * $svgHeight; |
|
| 1522 | 1522 | |
| 1523 | - return new ImageHelper_Size(array( |
|
| 1523 | + return new ImageHelper_Size(array( |
|
| 1524 | 1524 | (int)$pxWidth, |
| 1525 | 1525 | (int)$pxHeight, |
| 1526 | - 'bits' => 8 |
|
| 1527 | - )); |
|
| 1528 | - } |
|
| 1526 | + 'bits' => 8 |
|
| 1527 | + )); |
|
| 1528 | + } |
|
| 1529 | 1529 | |
| 1530 | 1530 | /** |
| 1531 | 1531 | * Crops the image to the specified width and height, optionally |
@@ -1584,26 +1584,26 @@ discard block |
||
| 1584 | 1584 | return $image->getColorAt(0, 0); |
| 1585 | 1585 | } |
| 1586 | 1586 | |
| 1587 | - /** |
|
| 1588 | - * Calculates the image's average color value, and |
|
| 1589 | - * returns an associative array with red, green, |
|
| 1590 | - * blue and alpha keys. |
|
| 1591 | - * |
|
| 1592 | - * @throws ImageHelper_Exception |
|
| 1593 | - * @return RGBAColor |
|
| 1594 | - */ |
|
| 1587 | + /** |
|
| 1588 | + * Calculates the image's average color value, and |
|
| 1589 | + * returns an associative array with red, green, |
|
| 1590 | + * blue and alpha keys. |
|
| 1591 | + * |
|
| 1592 | + * @throws ImageHelper_Exception |
|
| 1593 | + * @return RGBAColor |
|
| 1594 | + */ |
|
| 1595 | 1595 | public function calcAverageColorRGB() : RGBAColor |
| 1596 | 1596 | { |
| 1597 | - return $this->calcAverageColor(); |
|
| 1597 | + return $this->calcAverageColor(); |
|
| 1598 | 1598 | } |
| 1599 | 1599 | |
| 1600 | - /** |
|
| 1601 | - * Calculates the image's average color value, and |
|
| 1602 | - * returns a hex color string (without the #). |
|
| 1603 | - * |
|
| 1604 | - * @throws ImageHelper_Exception |
|
| 1605 | - * @return string |
|
| 1606 | - */ |
|
| 1600 | + /** |
|
| 1601 | + * Calculates the image's average color value, and |
|
| 1602 | + * returns a hex color string (without the #). |
|
| 1603 | + * |
|
| 1604 | + * @throws ImageHelper_Exception |
|
| 1605 | + * @return string |
|
| 1606 | + */ |
|
| 1607 | 1607 | public function calcAverageColorHex() : string |
| 1608 | 1608 | { |
| 1609 | 1609 | return $this->calcAverageColor()->toHEX(); |
@@ -1653,15 +1653,15 @@ discard block |
||
| 1653 | 1653 | return $this->calcAverageColorRGB()->getBrightness(); |
| 1654 | 1654 | } |
| 1655 | 1655 | |
| 1656 | - /** |
|
| 1657 | - * Retrieves a md5 hash of the source image file. |
|
| 1658 | - * |
|
| 1659 | - * NOTE: Only works when the helper has been created |
|
| 1660 | - * from a file. Otherwise, an exception is thrown. |
|
| 1661 | - * |
|
| 1662 | - * @return string |
|
| 1663 | - * @throws ImageHelper_Exception|OutputBuffering_Exception |
|
| 1664 | - */ |
|
| 1656 | + /** |
|
| 1657 | + * Retrieves a md5 hash of the source image file. |
|
| 1658 | + * |
|
| 1659 | + * NOTE: Only works when the helper has been created |
|
| 1660 | + * from a file. Otherwise, an exception is thrown. |
|
| 1661 | + * |
|
| 1662 | + * @return string |
|
| 1663 | + * @throws ImageHelper_Exception|OutputBuffering_Exception |
|
| 1664 | + */ |
|
| 1665 | 1665 | public function getHash() : string |
| 1666 | 1666 | { |
| 1667 | 1667 | if($this->newImage === null) |
@@ -73,18 +73,18 @@ discard block |
||
| 73 | 73 | public const ERROR_PATH_INVALID = 340040; |
| 74 | 74 | public const ERROR_CANNOT_COPY_FILE_TO_FOLDER = 340041; |
| 75 | 75 | |
| 76 | - /** |
|
| 77 | - * Opens a serialized file and returns the unserialized data. |
|
| 78 | - * |
|
| 79 | - * @param string|PathInfoInterface|SplFileInfo $file |
|
| 80 | - * @throws FileHelper_Exception |
|
| 81 | - * @return array<int|string,mixed> |
|
| 82 | - * @see SerializedFile::parse() |
|
| 83 | - * |
|
| 84 | - * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 85 | - * @see FileHelper::ERROR_SERIALIZED_FILE_CANNOT_BE_READ |
|
| 86 | - * @see FileHelper::ERROR_SERIALIZED_FILE_UNSERIALZE_FAILED |
|
| 87 | - */ |
|
| 76 | + /** |
|
| 77 | + * Opens a serialized file and returns the unserialized data. |
|
| 78 | + * |
|
| 79 | + * @param string|PathInfoInterface|SplFileInfo $file |
|
| 80 | + * @throws FileHelper_Exception |
|
| 81 | + * @return array<int|string,mixed> |
|
| 82 | + * @see SerializedFile::parse() |
|
| 83 | + * |
|
| 84 | + * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 85 | + * @see FileHelper::ERROR_SERIALIZED_FILE_CANNOT_BE_READ |
|
| 86 | + * @see FileHelper::ERROR_SERIALIZED_FILE_UNSERIALZE_FAILED |
|
| 87 | + */ |
|
| 88 | 88 | public static function parseSerializedFile($file) : array |
| 89 | 89 | { |
| 90 | 90 | return SerializedFile::factory($file)->parse(); |
@@ -103,13 +103,13 @@ discard block |
||
| 103 | 103 | return FolderTree::delete($rootFolder); |
| 104 | 104 | } |
| 105 | 105 | |
| 106 | - /** |
|
| 107 | - * Create a folder, if it does not exist yet. |
|
| 108 | - * |
|
| 109 | - * @param string|PathInfoInterface $path |
|
| 110 | - * @throws FileHelper_Exception |
|
| 111 | - * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER |
|
| 112 | - */ |
|
| 106 | + /** |
|
| 107 | + * Create a folder, if it does not exist yet. |
|
| 108 | + * |
|
| 109 | + * @param string|PathInfoInterface $path |
|
| 110 | + * @throws FileHelper_Exception |
|
| 111 | + * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER |
|
| 112 | + */ |
|
| 113 | 113 | public static function createFolder($path) : FolderInfo |
| 114 | 114 | { |
| 115 | 115 | return self::getFolderInfo($path)->create(); |
@@ -138,36 +138,36 @@ discard block |
||
| 138 | 138 | FolderTree::copy($source, $target); |
| 139 | 139 | } |
| 140 | 140 | |
| 141 | - /** |
|
| 142 | - * Copies a file to the target location. Includes checks |
|
| 143 | - * for most error sources, like the source file not being |
|
| 144 | - * readable. Automatically creates the target folder if it |
|
| 145 | - * does not exist yet. |
|
| 146 | - * |
|
| 147 | - * @param string|PathInfoInterface|SplFileInfo $sourcePath |
|
| 148 | - * @param string|PathInfoInterface|SplFileInfo $targetPath |
|
| 149 | - * @throws FileHelper_Exception |
|
| 150 | - * |
|
| 151 | - * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER |
|
| 152 | - * @see FileHelper::ERROR_SOURCE_FILE_NOT_FOUND |
|
| 153 | - * @see FileHelper::ERROR_SOURCE_FILE_NOT_READABLE |
|
| 154 | - * @see FileHelper::ERROR_TARGET_COPY_FOLDER_NOT_WRITABLE |
|
| 155 | - * @see FileHelper::ERROR_CANNOT_COPY_FILE |
|
| 156 | - */ |
|
| 141 | + /** |
|
| 142 | + * Copies a file to the target location. Includes checks |
|
| 143 | + * for most error sources, like the source file not being |
|
| 144 | + * readable. Automatically creates the target folder if it |
|
| 145 | + * does not exist yet. |
|
| 146 | + * |
|
| 147 | + * @param string|PathInfoInterface|SplFileInfo $sourcePath |
|
| 148 | + * @param string|PathInfoInterface|SplFileInfo $targetPath |
|
| 149 | + * @throws FileHelper_Exception |
|
| 150 | + * |
|
| 151 | + * @see FileHelper::ERROR_CANNOT_CREATE_FOLDER |
|
| 152 | + * @see FileHelper::ERROR_SOURCE_FILE_NOT_FOUND |
|
| 153 | + * @see FileHelper::ERROR_SOURCE_FILE_NOT_READABLE |
|
| 154 | + * @see FileHelper::ERROR_TARGET_COPY_FOLDER_NOT_WRITABLE |
|
| 155 | + * @see FileHelper::ERROR_CANNOT_COPY_FILE |
|
| 156 | + */ |
|
| 157 | 157 | public static function copyFile($sourcePath, $targetPath) : void |
| 158 | 158 | { |
| 159 | 159 | self::getFileInfo($sourcePath)->copyTo($targetPath); |
| 160 | 160 | } |
| 161 | 161 | |
| 162 | - /** |
|
| 163 | - * Deletes the target file. Ignored if it cannot be found, |
|
| 164 | - * and throws an exception if it fails. |
|
| 165 | - * |
|
| 166 | - * @param string|PathInfoInterface|SplFileInfo $filePath |
|
| 167 | - * @throws FileHelper_Exception |
|
| 168 | - * |
|
| 169 | - * @see FileHelper::ERROR_CANNOT_DELETE_FILE |
|
| 170 | - */ |
|
| 162 | + /** |
|
| 163 | + * Deletes the target file. Ignored if it cannot be found, |
|
| 164 | + * and throws an exception if it fails. |
|
| 165 | + * |
|
| 166 | + * @param string|PathInfoInterface|SplFileInfo $filePath |
|
| 167 | + * @throws FileHelper_Exception |
|
| 168 | + * |
|
| 169 | + * @see FileHelper::ERROR_CANNOT_DELETE_FILE |
|
| 170 | + */ |
|
| 171 | 171 | public static function deleteFile($filePath) : void |
| 172 | 172 | { |
| 173 | 173 | self::getFileInfo($filePath)->delete(); |
@@ -288,7 +288,7 @@ discard block |
||
| 288 | 288 | */ |
| 289 | 289 | public static function isPHPFile($filePath) : bool |
| 290 | 290 | { |
| 291 | - return self::getExtension($filePath) === 'php'; |
|
| 291 | + return self::getExtension($filePath) === 'php'; |
|
| 292 | 292 | } |
| 293 | 293 | |
| 294 | 294 | /** |
@@ -354,16 +354,16 @@ discard block |
||
| 354 | 354 | ->parse(); |
| 355 | 355 | } |
| 356 | 356 | |
| 357 | - /** |
|
| 358 | - * Corrects common formatting mistakes when users enter |
|
| 359 | - * file names, like too many spaces, dots and the like. |
|
| 360 | - * |
|
| 361 | - * NOTE: if the file name contains a path, the path is |
|
| 362 | - * stripped, leaving only the file name. |
|
| 363 | - * |
|
| 364 | - * @param string $name |
|
| 365 | - * @return string |
|
| 366 | - */ |
|
| 357 | + /** |
|
| 358 | + * Corrects common formatting mistakes when users enter |
|
| 359 | + * file names, like too many spaces, dots and the like. |
|
| 360 | + * |
|
| 361 | + * NOTE: if the file name contains a path, the path is |
|
| 362 | + * stripped, leaving only the file name. |
|
| 363 | + * |
|
| 364 | + * @param string $name |
|
| 365 | + * @return string |
|
| 366 | + */ |
|
| 367 | 367 | public static function fixFileName(string $name) : string |
| 368 | 368 | { |
| 369 | 369 | return NameFixer::fixName($name); |
@@ -423,23 +423,23 @@ discard block |
||
| 423 | 423 | return self::findFiles($targetFolder, array('php'), $options); |
| 424 | 424 | } |
| 425 | 425 | |
| 426 | - /** |
|
| 427 | - * Finds files according to the specified options. |
|
| 428 | - * |
|
| 429 | - * NOTE: This method only exists for backwards compatibility. |
|
| 430 | - * Use the {@see FileHelper::createFileFinder()} method instead, |
|
| 431 | - * which offers an object-oriented interface that is much easier |
|
| 432 | - * to use. |
|
| 433 | - * |
|
| 434 | - * @param string|PathInfoInterface|SplFileInfo $targetFolder |
|
| 435 | - * @param string[] $extensions |
|
| 436 | - * @param array<string,mixed> $options |
|
| 437 | - * @throws FileHelper_Exception |
|
| 438 | - * @return string[] |
|
| 439 | - * |
|
| 440 | - * @see FileHelper::createFileFinder() |
|
| 441 | - * @deprecated Use the file finder instead. |
|
| 442 | - */ |
|
| 426 | + /** |
|
| 427 | + * Finds files according to the specified options. |
|
| 428 | + * |
|
| 429 | + * NOTE: This method only exists for backwards compatibility. |
|
| 430 | + * Use the {@see FileHelper::createFileFinder()} method instead, |
|
| 431 | + * which offers an object-oriented interface that is much easier |
|
| 432 | + * to use. |
|
| 433 | + * |
|
| 434 | + * @param string|PathInfoInterface|SplFileInfo $targetFolder |
|
| 435 | + * @param string[] $extensions |
|
| 436 | + * @param array<string,mixed> $options |
|
| 437 | + * @throws FileHelper_Exception |
|
| 438 | + * @return string[] |
|
| 439 | + * |
|
| 440 | + * @see FileHelper::createFileFinder() |
|
| 441 | + * @deprecated Use the file finder instead. |
|
| 442 | + */ |
|
| 443 | 443 | public static function findFiles($targetFolder, array $extensions=array(), array $options=array()) : array |
| 444 | 444 | { |
| 445 | 445 | $finder = self::createFileFinder($targetFolder); |
@@ -510,13 +510,13 @@ discard block |
||
| 510 | 510 | return self::$unicodeHandling; |
| 511 | 511 | } |
| 512 | 512 | |
| 513 | - /** |
|
| 514 | - * Normalizes the slash style in a file or folder path, |
|
| 515 | - * by replacing any anti-slashes with forward slashes. |
|
| 516 | - * |
|
| 517 | - * @param string $path |
|
| 518 | - * @return string |
|
| 519 | - */ |
|
| 513 | + /** |
|
| 514 | + * Normalizes the slash style in a file or folder path, |
|
| 515 | + * by replacing any anti-slashes with forward slashes. |
|
| 516 | + * |
|
| 517 | + * @param string $path |
|
| 518 | + * @return string |
|
| 519 | + */ |
|
| 520 | 520 | public static function normalizePath(string $path) : string |
| 521 | 521 | { |
| 522 | 522 | return str_replace(array('\\', '//'), array('/', '/'), $path); |
@@ -641,70 +641,70 @@ discard block |
||
| 641 | 641 | ->getPaths(); |
| 642 | 642 | } |
| 643 | 643 | |
| 644 | - /** |
|
| 645 | - * Retrieves the maximum allowed upload file size, in bytes. |
|
| 646 | - * Takes into account the PHP ini settings <code>post_max_size</code> |
|
| 647 | - * and <code>upload_max_filesize</code>. Since these cannot |
|
| 648 | - * be modified at runtime, they are the hard limits for uploads. |
|
| 649 | - * |
|
| 650 | - * NOTE: Based on binary values, where 1KB = 1024 Bytes. |
|
| 651 | - * |
|
| 652 | - * @return int Will return <code>-1</code> if no limit. |
|
| 653 | - */ |
|
| 644 | + /** |
|
| 645 | + * Retrieves the maximum allowed upload file size, in bytes. |
|
| 646 | + * Takes into account the PHP ini settings <code>post_max_size</code> |
|
| 647 | + * and <code>upload_max_filesize</code>. Since these cannot |
|
| 648 | + * be modified at runtime, they are the hard limits for uploads. |
|
| 649 | + * |
|
| 650 | + * NOTE: Based on binary values, where 1KB = 1024 Bytes. |
|
| 651 | + * |
|
| 652 | + * @return int Will return <code>-1</code> if no limit. |
|
| 653 | + */ |
|
| 654 | 654 | public static function getMaxUploadFilesize() : int |
| 655 | 655 | { |
| 656 | 656 | return UploadFileSizeInfo::getFileSize(); |
| 657 | 657 | } |
| 658 | 658 | |
| 659 | - /** |
|
| 660 | - * Makes a path relative using a folder depth: will reduce the |
|
| 661 | - * length of the path so that only the amount of folders defined |
|
| 662 | - * in the <code>$depth</code> attribute are shown below the actual |
|
| 663 | - * folder or file in the path. |
|
| 664 | - * |
|
| 665 | - * @param string $path The absolute or relative path |
|
| 666 | - * @param int $depth The folder depth to reduce the path to |
|
| 667 | - * @return string |
|
| 668 | - */ |
|
| 659 | + /** |
|
| 660 | + * Makes a path relative using a folder depth: will reduce the |
|
| 661 | + * length of the path so that only the amount of folders defined |
|
| 662 | + * in the <code>$depth</code> attribute are shown below the actual |
|
| 663 | + * folder or file in the path. |
|
| 664 | + * |
|
| 665 | + * @param string $path The absolute or relative path |
|
| 666 | + * @param int $depth The folder depth to reduce the path to |
|
| 667 | + * @return string |
|
| 668 | + */ |
|
| 669 | 669 | public static function relativizePathByDepth(string $path, int $depth=2) : string |
| 670 | 670 | { |
| 671 | 671 | return PathRelativizer::relativizeByDepth($path, $depth); |
| 672 | 672 | } |
| 673 | 673 | |
| 674 | - /** |
|
| 675 | - * Makes the specified path relative to another path, |
|
| 676 | - * by removing one from the other if found. Also |
|
| 677 | - * normalizes the path to use forward slashes. |
|
| 678 | - * |
|
| 679 | - * Example: |
|
| 680 | - * |
|
| 681 | - * <pre> |
|
| 682 | - * relativizePath('c:\some\folder\to\file.txt', 'c:\some\folder'); |
|
| 683 | - * </pre> |
|
| 684 | - * |
|
| 685 | - * Result: <code>to/file.txt</code> |
|
| 686 | - * |
|
| 687 | - * @param string $path |
|
| 688 | - * @param string $relativeTo |
|
| 689 | - * @return string |
|
| 690 | - */ |
|
| 674 | + /** |
|
| 675 | + * Makes the specified path relative to another path, |
|
| 676 | + * by removing one from the other if found. Also |
|
| 677 | + * normalizes the path to use forward slashes. |
|
| 678 | + * |
|
| 679 | + * Example: |
|
| 680 | + * |
|
| 681 | + * <pre> |
|
| 682 | + * relativizePath('c:\some\folder\to\file.txt', 'c:\some\folder'); |
|
| 683 | + * </pre> |
|
| 684 | + * |
|
| 685 | + * Result: <code>to/file.txt</code> |
|
| 686 | + * |
|
| 687 | + * @param string $path |
|
| 688 | + * @param string $relativeTo |
|
| 689 | + * @return string |
|
| 690 | + */ |
|
| 691 | 691 | public static function relativizePath(string $path, string $relativeTo) : string |
| 692 | 692 | { |
| 693 | 693 | return PathRelativizer::relativize($path, $relativeTo); |
| 694 | 694 | } |
| 695 | 695 | |
| 696 | - /** |
|
| 697 | - * Checks that the target file exists, and throws an exception |
|
| 698 | - * if it does not. |
|
| 699 | - * |
|
| 700 | - * @param string|SplFileInfo $path |
|
| 701 | - * @param int|NULL $errorCode Optional custom error code |
|
| 702 | - * @throws FileHelper_Exception |
|
| 703 | - * @return string The real path to the file |
|
| 704 | - * |
|
| 705 | - * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 706 | - * @see FileHelper::ERROR_REAL_PATH_NOT_FOUND |
|
| 707 | - */ |
|
| 696 | + /** |
|
| 697 | + * Checks that the target file exists, and throws an exception |
|
| 698 | + * if it does not. |
|
| 699 | + * |
|
| 700 | + * @param string|SplFileInfo $path |
|
| 701 | + * @param int|NULL $errorCode Optional custom error code |
|
| 702 | + * @throws FileHelper_Exception |
|
| 703 | + * @return string The real path to the file |
|
| 704 | + * |
|
| 705 | + * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 706 | + * @see FileHelper::ERROR_REAL_PATH_NOT_FOUND |
|
| 707 | + */ |
|
| 708 | 708 | public static function requireFileExists($path, ?int $errorCode=null) : string |
| 709 | 709 | { |
| 710 | 710 | return self::getPathInfo($path) |
@@ -727,18 +727,18 @@ discard block |
||
| 727 | 727 | ->getPath(); |
| 728 | 728 | } |
| 729 | 729 | |
| 730 | - /** |
|
| 731 | - * Reads a specific line number from the target file and returns its |
|
| 732 | - * contents, if the file has such a line. Does so with little memory |
|
| 733 | - * usage, as the file is not read entirely into memory. |
|
| 734 | - * |
|
| 735 | - * @param string|PathInfoInterface|SplFileInfo $path |
|
| 736 | - * @param int $lineNumber Note: 1-based; the first line is number 1. |
|
| 737 | - * @return string|NULL Will return null if the requested line does not exist. |
|
| 738 | - * @throws FileHelper_Exception |
|
| 739 | - * |
|
| 740 | - * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 741 | - */ |
|
| 730 | + /** |
|
| 731 | + * Reads a specific line number from the target file and returns its |
|
| 732 | + * contents, if the file has such a line. Does so with little memory |
|
| 733 | + * usage, as the file is not read entirely into memory. |
|
| 734 | + * |
|
| 735 | + * @param string|PathInfoInterface|SplFileInfo $path |
|
| 736 | + * @param int $lineNumber Note: 1-based; the first line is number 1. |
|
| 737 | + * @return string|NULL Will return null if the requested line does not exist. |
|
| 738 | + * @throws FileHelper_Exception |
|
| 739 | + * |
|
| 740 | + * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 741 | + */ |
|
| 742 | 742 | public static function getLineFromFile($path, int $lineNumber) : ?string |
| 743 | 743 | { |
| 744 | 744 | return self::getFileInfo($path)->getLine($lineNumber); |
@@ -804,33 +804,33 @@ discard block |
||
| 804 | 804 | ->getLines($amount); |
| 805 | 805 | } |
| 806 | 806 | |
| 807 | - /** |
|
| 808 | - * Reads all content from a file. |
|
| 809 | - * |
|
| 810 | - * @param string|PathInfoInterface|SplFileInfo $filePath |
|
| 811 | - * @throws FileHelper_Exception |
|
| 812 | - * @return string |
|
| 813 | - * |
|
| 814 | - * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 815 | - * @see FileHelper::ERROR_CANNOT_READ_FILE_CONTENTS |
|
| 816 | - */ |
|
| 807 | + /** |
|
| 808 | + * Reads all content from a file. |
|
| 809 | + * |
|
| 810 | + * @param string|PathInfoInterface|SplFileInfo $filePath |
|
| 811 | + * @throws FileHelper_Exception |
|
| 812 | + * @return string |
|
| 813 | + * |
|
| 814 | + * @see FileHelper::ERROR_FILE_DOES_NOT_EXIST |
|
| 815 | + * @see FileHelper::ERROR_CANNOT_READ_FILE_CONTENTS |
|
| 816 | + */ |
|
| 817 | 817 | public static function readContents($filePath) : string |
| 818 | 818 | { |
| 819 | 819 | return self::getFileInfo($filePath)->getContents(); |
| 820 | 820 | } |
| 821 | 821 | |
| 822 | - /** |
|
| 823 | - * Ensures that the target path exists on disk, and is a folder. |
|
| 824 | - * |
|
| 825 | - * @param string|PathInfoInterface|SplFileInfo $path |
|
| 826 | - * @return string The real path, with normalized slashes. |
|
| 827 | - * @throws FileHelper_Exception |
|
| 828 | - * |
|
| 829 | - * @see FileHelper::normalizePath() |
|
| 830 | - * |
|
| 831 | - * @see FileHelper::ERROR_FOLDER_DOES_NOT_EXIST |
|
| 832 | - * @see FileHelper::ERROR_PATH_IS_NOT_A_FOLDER |
|
| 833 | - */ |
|
| 822 | + /** |
|
| 823 | + * Ensures that the target path exists on disk, and is a folder. |
|
| 824 | + * |
|
| 825 | + * @param string|PathInfoInterface|SplFileInfo $path |
|
| 826 | + * @return string The real path, with normalized slashes. |
|
| 827 | + * @throws FileHelper_Exception |
|
| 828 | + * |
|
| 829 | + * @see FileHelper::normalizePath() |
|
| 830 | + * |
|
| 831 | + * @see FileHelper::ERROR_FOLDER_DOES_NOT_EXIST |
|
| 832 | + * @see FileHelper::ERROR_PATH_IS_NOT_A_FOLDER |
|
| 833 | + */ |
|
| 834 | 834 | public static function requireFolderExists($path) : string |
| 835 | 835 | { |
| 836 | 836 | return self::getFolderInfo($path) |