Search moodle.org's
Developer Documentation

See Release Notes

  • Bug fixes for general core bugs in 3.11.x will end 14 Nov 2022 (12 months plus 6 months extension).
  • Bug fixes for security issues in 3.11.x will end 13 Nov 2023 (18 months plus 12 months extension).
  • PHP version: minimum PHP 7.3.0 Note: minimum PHP version has increased since Moodle 3.10. PHP 7.4.x is supported too.
<?php

namespace PhpOffice\PhpSpreadsheet\Worksheet;

> use PhpOffice\PhpSpreadsheet\Cell\Coordinate; class ColumnDimension extends Dimension > use PhpOffice\PhpSpreadsheet\Helper\Dimension as CssDimension; { >
/** * Column index. *
< * @var string
> * @var ?string
*/ private $columnIndex; /** * Column width. * * When this is set to a negative value, the column width should be ignored by IWriter * * @var float */ private $width = -1; /** * Auto size? * * @var bool */ private $autoSize = false; /** * Create a new ColumnDimension. *
< * @param string $pIndex Character column index
> * @param ?string $index Character column index
*/
< public function __construct($pIndex = 'A')
> public function __construct($index = 'A')
{ // Initialise values
< $this->columnIndex = $pIndex;
> $this->columnIndex = $index;
// set dimension as unformatted by default parent::__construct(0); } /** * Get column index as string eg: 'A'.
< * < * @return string
*/
< public function getColumnIndex()
> public function getColumnIndex(): ?string
{ return $this->columnIndex; } /** * Set column index as string eg: 'A'.
< * < * @param string $pValue < * < * @return $this
*/
< public function setColumnIndex($pValue)
> public function setColumnIndex(string $index): self
{
< $this->columnIndex = $pValue;
> $this->columnIndex = $index;
return $this; } /**
< * Get Width. < * < * @return float
> * Get column index as numeric.
*/
< public function getWidth()
> public function getColumnNumeric(): int
{
< return $this->width;
> return Coordinate::columnIndexFromString($this->columnIndex ?? ''); > } > > /** > * Set column index as numeric. > */ > public function setColumnNumeric(int $index): self > { > $this->columnIndex = Coordinate::stringFromColumnIndex($index); > > return $this; > } > > /** > * Get Width. > * > * Each unit of column width is equal to the width of one character in the default font size. A value of -1 > * tells Excel to display this column in its default width. > * By default, this will be the return value; but this method also accepts an optional unit of measure argument > * and will convert the returned value to the specified UoM.. > */ > public function getWidth(?string $unitOfMeasure = null): float > { > return ($unitOfMeasure === null || $this->width < 0) > ? $this->width > : (new CssDimension((string) $this->width))->toUnit($unitOfMeasure);
} /** * Set Width. *
< * @param float $pValue
> * Each unit of column width is equal to the width of one character in the default font size. A value of -1 > * tells Excel to display this column in its default width. > * By default, this will be the unit of measure for the passed value; but this method also accepts an > * optional unit of measure argument, and will convert the value from the specified UoM using an > * approximation method.
* * @return $this */
< public function setWidth($pValue)
> public function setWidth(float $width, ?string $unitOfMeasure = null)
{
< $this->width = $pValue;
> $this->width = ($unitOfMeasure === null || $width < 0) > ? $width > : (new CssDimension("{$width}{$unitOfMeasure}"))->width();
return $this; } /** * Get Auto Size.
< * < * @return bool
*/
< public function getAutoSize()
> public function getAutoSize(): bool
{ return $this->autoSize; } /** * Set Auto Size. *
< * @param bool $pValue < *
* @return $this */
< public function setAutoSize($pValue)
> public function setAutoSize(bool $autosizeEnabled)
{
< $this->autoSize = $pValue;
> $this->autoSize = $autosizeEnabled;
return $this; } }