@@ 7398-7416 (lines=19) @@ | ||
7395 | * |
|
7396 | * @return array |
|
7397 | */ |
|
7398 | private function readBIFF8CellRangeAddressList($subData) |
|
7399 | { |
|
7400 | $cellRangeAddresses = []; |
|
7401 | ||
7402 | // offset: 0; size: 2; number of the following cell range addresses |
|
7403 | $nm = self::getUInt2d($subData, 0); |
|
7404 | ||
7405 | $offset = 2; |
|
7406 | // offset: 2; size: 8 * $nm; list of $nm (fixed) cell range addresses |
|
7407 | for ($i = 0; $i < $nm; ++$i) { |
|
7408 | $cellRangeAddresses[] = $this->readBIFF8CellRangeAddressFixed(substr($subData, $offset, 8)); |
|
7409 | $offset += 8; |
|
7410 | } |
|
7411 | ||
7412 | return [ |
|
7413 | 'size' => 2 + 8 * $nm, |
|
7414 | 'cellRangeAddresses' => $cellRangeAddresses, |
|
7415 | ]; |
|
7416 | } |
|
7417 | ||
7418 | /** |
|
7419 | * Read BIFF5 cell range address list |
|
@@ 7426-7444 (lines=19) @@ | ||
7423 | * |
|
7424 | * @return array |
|
7425 | */ |
|
7426 | private function readBIFF5CellRangeAddressList($subData) |
|
7427 | { |
|
7428 | $cellRangeAddresses = []; |
|
7429 | ||
7430 | // offset: 0; size: 2; number of the following cell range addresses |
|
7431 | $nm = self::getUInt2d($subData, 0); |
|
7432 | ||
7433 | $offset = 2; |
|
7434 | // offset: 2; size: 6 * $nm; list of $nm (fixed) cell range addresses |
|
7435 | for ($i = 0; $i < $nm; ++$i) { |
|
7436 | $cellRangeAddresses[] = $this->readBIFF5CellRangeAddressFixed(substr($subData, $offset, 6)); |
|
7437 | $offset += 6; |
|
7438 | } |
|
7439 | ||
7440 | return [ |
|
7441 | 'size' => 2 + 6 * $nm, |
|
7442 | 'cellRangeAddresses' => $cellRangeAddresses, |
|
7443 | ]; |
|
7444 | } |
|
7445 | ||
7446 | /** |
|
7447 | * Get a sheet range like Sheet1:Sheet3 from REF index |