laravel-phpexcel,getCalculatedValue()返回int 0

时间:2015-01-28 07:34:27

标签: php laravel phpexcel

我已经在这个问题上苦苦挣扎了几天。 我有一个xls文件,包含多个工作表,上面有函数。 我想要做的是在第一张纸上插入值,然后从第二张纸中检索结果,但我得到的结果是0.

这是我写的代码

    $fileType = 'Excel5';
    $fileName = storage_path().'/penssion_simulator_file/test2.xls';

    // Read the file
    $objReader = PHPExcel_IOFactory::createReader($fileType);
    $objReader->setReadDataOnly(true);

    echo "Start loading file:</br>";
    echo date('H:i:s d/m/Y')."</br>";
    $objPHPExcel = $objReader->load($fileName);
    echo "End of loading file:</br>";
    echo date('H:i:s d/m/Y')."</br>";

    PHPExcel_Calculation::getInstance($objPHPExcel)->disableCalculationCache();
    PHPExcel_Calculation::getInstance($objPHPExcel)->clearCalculationCache();

    echo "Start setting values to file:</br>";
    echo date('H:i:s d/m/Y')."</br>";
    $objPHPExcel->setActiveSheetIndex(0)
        ->setCellValue('B7', (string)date('d/m/Y'))
        ->setCellValue('B8', (string)'30/05/1984')
        ->setCellValue('B9', (string)'01/05/2013')
        ->setCellValue('B10', (integer)20000)
        ->setCellValue('B11', (string)'ללא בן זוג וילדים (לצורכי ביטוח)')
        ->setCellValue('B12', (float)5.5)
        ->setCellValue('B13', (float)6.0)
        ->setCellValue('B14', (float)8.33)
        ->setCellValue('B15', '-')
        ->setCellValue('B16', (string)'גבר')
        ->setCellValue('B17', (integer)0)
        ->setCellValue('B18', (integer)0)
        ->setCellValue('B19', (string)'עתיר חיסכון')
        ->setCellValue('B20', (float)6.0)
        ->setCellValue('B21', (float)0.25)
        ->setCellValue('B22', (integer)67)
        ->setCellValue('B23', (string)'כן')
        ->setCellValue('B24', (string)'לא');

    echo "End of setting values to file:</br>";
    echo date('H:i:s d/m/Y')."</br>";

    $objWorksheet = $objPHPExcel->setActiveSheetIndex(1);
    echo "Value of cell B6 on sheet 1: ".($objWorksheet->getCell('B6')->getCalculatedValue())."</br>";

    // $value = $this->getCellValue($objWorksheet,'B3');

    // echo "</br>This is the value og cell B3: ".$value."</br>";

    // PHPExcel_Calculation::getInstance()->writeDebugLog = true;
    // $this->testFormula($objWorksheet,'B3');

    $objWorksheet = $objPHPExcel->setActiveSheetIndex(0);


    echo "Value of cell B7 on sheet 0: ".($objPHPExcel->getActiveSheet()->getCell('B7')->getValue())."</br>";




    echo date('H:i:s d/m/Y')."</br>";
    // Change the file
    die('FIN');

这些是我打印的输出:

开始加载文件 09:03:27 28/01/2015 加载文件结束: 09:04:26 28/01/2015 开始将值设置为文件: 09:04:26 28/01/2015 将值设置为文件结束: 09:04:26 28/01/2015 第1页上的单元格B6的值: 0 表格0上单元格B7的值: 28/01/2015 09:04:30 28/01/2015 FIN

我正在使用laravel,正如我在这篇文章的标题中提到的那样,以及laravel-phpexcel包。

感谢您的帮助!

0 个答案:

没有答案