<?php namespace PhpOffice\PhpSpreadsheet\RichText; class TextElement implements ITextElement { /** * Text. * * @var string */ private $text; /** * Create a new TextElement instance. * * @param string $text Text */ public function __construct($text = '') { // Initialise variables $this->text = $text; } /** * Get text. * * @return string Text */ public function getText() { return $this->text; } /** * Set text. * * @param string $text Text * * @return $this */ public function setText($text) { $this->text = $text; return $this; } /** * Get font. * * @return null|\PhpOffice\PhpSpreadsheet\Style\Font */ public function getFont() { return null; } /** * Get hash code. * * @return string Hash code */ public function getHashCode() { return md5( $this->text . __CLASS__ ); }< < /** < * Implement PHP __clone to create a deep clone, not just a shallow copy. < */ < public function __clone() < { < $vars = get_object_vars($this); < foreach ($vars as $key => $value) { < if (is_object($value)) { < $this->$key = clone $value; < } else { < $this->$key = $value; < } < } < }}