Какова цель значения три 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Должно ли форматирование применяться к значениям ячеек?
Другие вопросы по тегам