来自样式对象的PHPExcel特定单元格格式

aar*_*ond 5 php phpexcel

我在一个项目中使用PHPExcel,需要设置excel表格单元格的样式.

我所做的是创建一个像这样的PHPExcel样式对象:

$style['red_text'] = new PHPExcel_Style();
Run Code Online (Sandbox Code Playgroud)

然后我使用此样式上的set函数来填充对象,如下所示:

$style['red_text']->getFont()
        ->applyFromArray(
                array('name'=>'Arial')
         )
Run Code Online (Sandbox Code Playgroud)

现在我试图在单元格中使用此样式对象.我尝试使用applyFromArray函数,如下所示:

$objPHPExcel->getActiveSheet()->getStyleByColumnAndRow($x, $y)->applyFromArray( $style['red_text'] );

这不是我不想的方式.对我而言,这是分配样式的最可读和最一致的方式,但如果一个更熟悉PHPExcel的人可以指导我采用正确的方法,我将非常感激!

PS原谅格式; 这是我的第一篇文章 :)

编辑:刚刚发现错误:这"Invalid style array passed" 是否意味着我正在错误地创建样式对象?

Mar*_*ker 12

从数组应用实际上是从数组应用,而不是从样式对象应用

$style['red_text'] = array(
    'font' => array(
        'name' => 'Arial',
        'color' => array(
            'rgb' => 'FF0000'
        )
    ),
);
$objPHPExcel->getActiveSheet()
    ->getStyleByColumnAndRow($x, $y)
    ->applyFromArray($style['red_text']);
Run Code Online (Sandbox Code Playgroud)

或者:

$style['red_text'] = array(
    'name' => 'Arial',
    'color' => array(
        'rgb' => 'FF0000'
    )
);
$objPHPExcel->getActiveSheet()
    ->getStyleByColumnAndRow($x, $y)
    ->getFont()
    ->applyFromArray($style['red_text']);
Run Code Online (Sandbox Code Playgroud)