<?php /** * Created by PhpStorm. * User: phperstar * Date: 2020/8/11 * Time: 6:54 PM */ namespace Util\PHPExcel\Calculation; class PHPExcelFunction { /* Function categories */ const CATEGORY_CUBE = 'Cube'; const CATEGORY_DATABASE = 'Database'; const CATEGORY_DATE_AND_TIME = 'Date and Time'; const CATEGORY_ENGINEERING = 'Engineering'; const CATEGORY_FINANCIAL = 'Financial'; const CATEGORY_INFORMATION = 'Information'; const CATEGORY_LOGICAL = 'Logical'; const CATEGORY_LOOKUP_AND_REFERENCE = 'Lookup and Reference'; const CATEGORY_MATH_AND_TRIG = 'Math and Trig'; const CATEGORY_STATISTICAL = 'Statistical'; const CATEGORY_TEXT_AND_DATA = 'Text and Data'; /** * Category (represented by CATEGORY_*) * * @var string */ private $category; /** * Excel name * * @var string */ private $excelName; /** * PHPExcel name * * @var string */ private $phpExcelName; /** * Create a new PHPExcel_Calculation_Function * * @param string $pCategory Category (represented by CATEGORY_*) * @param string $pExcelName Excel function name * @param string $pPHPExcelName PHPExcel function mapping * @throws PHPExcel_Calculation_Exception */ public function __construct($pCategory = null, $pExcelName = null, $pPHPExcelName = null) { if (($pCategory !== null) && ($pExcelName !== null) && ($pPHPExcelName !== null)) { // Initialise values $this->category = $pCategory; $this->excelName = $pExcelName; $this->phpExcelName = $pPHPExcelName; } else { throw new PHPExcel_Calculation_Exception("Invalid parameters passed."); } } /** * Get Category (represented by CATEGORY_*) * * @return string */ public function getCategory() { return $this->category; } /** * Set Category (represented by CATEGORY_*) * * @param string $value * @throws PHPExcel_Calculation_Exception */ public function setCategory($value = null) { if (!is_null($value)) { $this->category = $value; } else { throw new PHPExcel_Calculation_Exception("Invalid parameter passed."); } } /** * Get Excel name * * @return string */ public function getExcelName() { return $this->excelName; } /** * Set Excel name * * @param string $value */ public function setExcelName($value) { $this->excelName = $value; } /** * Get PHPExcel name * * @return string */ public function getPHPExcelName() { return $this->phpExcelName; } /** * Set PHPExcel name * * @param string $value */ public function setPHPExcelName($value) { $this->phpExcelName = $value; } }