首页 > 解决方案 > 在 PHPExcel 中显示货币

问题描述

我想用货币格式化我的单元格,但我找不到实现它的方法。分别地,我真的很确定我必须将代码放在哪里以显示值背后的货币。

我已经尝试了论坛中的几种解决方案,但都没有奏效。

require_once "Classes/PHPExcel.php";
    $tmpfname = "test.xlsx";
    $excelReader = PHPExcel_IOFactory::createReaderForFile($tmpfname);
    $excelObj = $excelReader->load($tmpfname);
    $worksheet = $excelObj->getSheet(0);
    $lastRow = $worksheet->getHighestRow();




    echo "<table>";
    for ($row = 1; $row <= $lastRow; $row++) {
         echo "<tr><td>";
         echo $worksheet->getCell('A'.$row)->getValue();
         echo "</td><td>";
         echo $worksheet->getCell('B'.$row)->getValue();
         echo "</td><tr>";
    }
    echo "</table>";    

?>

标签: phpexcelcurrency

解决方案


如果单元格已经格式化,则使用getFormattedValue而不是getValue在检索它们时使用。

echo $worksheet->getCell('A'.$row)->getFormattedValue();
echo "</td><td>";
echo $worksheet->getCell('B'.$row)->getFormattedValue();

如果您想使用现有代码格式化电子表格中的原始值,那么您正在寻找PHP number_format函数(在下面的示例中,我告诉它使用 2 个小数位,您当然可以更改)。

echo number_format($worksheet->getCell('A'.$row)->getFormattedValue(),2);
echo "</td><td>";
echo number_format($worksheet->getCell('B'.$row)->getFormattedValue(),2);

推荐阅读