Какова цель значения три bool в читателе PHPExcel?
Я использую PHPExcel Reader для чтения данных из файла Exce в моем приложении Yii2. Это код, который я использовал:
$objPHPExcel = new \PHPExcel();
$fileName = Yii::getAlias('@webroot/trash/trash_vatout/') . $name;
$inputFiles = fopen(Yii::getAlias('@webroot/trash/trash_vatout/') . $name, "r");
try {
$inputFileType = \PHPExcel_IOFactory::identify($fileName);
$objReader = \PHPExcel_IOFactory::createReader($inputFileType);
$objPHPExcel = $objReader->load($fileName);
} catch (Exception $ex) {
die('Error');
}
$sheet = $objPHPExcel->getSheet(0);
$highestRow = $sheet->getHighestDataRow();
$highestColumn = $sheet->getHighestDataColumn();
$colNumber = PHPExcel_Cell::columnIndexFromString($highestColumn);
$col = $colNumber - 1;
$arrayData = [];
$bool1 = NULL; //first bool value
$bool2 = NULL; //second bool value
$bool3 = NULL; //third bool value
for ($row = 1; $row <= $highestRow; ++$row) {
$rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, $bool1, $bool2, $bool3);
if (!is_null($rowData[0][$col])) {
$arrayData[] = array_map(function($values) {
$tempArrayKey = [];
foreach ($values as $key => $value) {
$newKey = $key + 1;
$tempArrayKey[] = $newKey . '_' . $value;
}
return $tempArrayKey;
}, $rowData);
}
}
Я использовал его в следующем уроке из какого-то источника. В строке кода $rowData = $sheet->rangeToArray('A' . $row . ':' . $highestColumn . $row, $bool1, $bool2, $bool3);
было установлено три логических значения. В моем случае я установил их все как NULL.
Кто-нибудь знает, какова цель значения bool на самом деле?
Я много раз пытался прочитать файл, если я не ошибаюсь, второе значение bool установлено для чтения формул Excel.
Но как насчет других?
Благодарю.
1 ответ
Подпись для метода rangeToArray()
/**
* Create array from a range of cells
*
* @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1")
* @param mixed $nullValue Value returned in the array entry if a cell doesn't exist
* @param boolean $calculateFormulas Should formulas be calculated?
* @param boolean $formatData Should formatting be applied to cell values?
* @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero
* True - Return rows and columns indexed by their actual row and column IDs
* @return array
*/
так
$bool1
- смешанный$nullValue
Значение, возвращаемое в записи массива, если ячейка не существует (может быть любым типом данных / значением)$bool2
- логическое значение$calculateFormulas
Нужно ли рассчитывать формулы?$bool3
- логическое значение$formatData
Должно ли форматирование применяться к значениям ячеек?