如何使用变量的值作为属性

时间:2015-04-21 16:59:31

标签: php phpexcel

我写了一个使用PHPExcel的PHP-Skript。它应该使用配置文件来创建电子表格。当我尝试应用样式时,我的问题出现了。

我根据config-file中给出的信息创建了一个样式数组。现在,当谈到例如您将使用

之类的单元格或边框的对齐方式
'horizontal' => PHPExcel_Style_Alignment::HORIZONTAL_CENTER

其中HORIZONTAL_CENTER是所需的属性。现在,我将此属性名称存储在变量中,我不能使用类似

的内容
'horizontal' => PHPExcel_Style_Alignment::$variableWithPropertyName

但是我需要使用变量的值,因为可以有不同的属性。

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

您应该能够使用Reflection API来检索值,如下所示:

$property = new ReflectionProperty('PHPExcel_Style_Alignment', $variableWithPropertyName); 

然后可以像这样检索值:

'horizontal' => $property->getValue();

答案 1 :(得分:0)

$alignmentsArray = (new ReflectionClass('PHPExcel_Style_Alignment'))->getConstants();

应该返回一个可能的对齐值数组,并按名称索引,这样就可以设置

'horizontal' => $alignmentsArray[$variableWithPropertyName]

其中$variableWithPropertyName是您的值HORIZONTAL_CENTER