/** * Constructor * * - normalizes string * - splits one string into many Paragraphs objects * * @param string $string String to parse */ public function __construct($string) { $this->rawString = $string; $parts = explode(Paragraph::SEPARATOR, $this->normalize($string)); foreach ($parts as $part) { $paragraph = new Paragraph($part); $this->defines = array_merge($this->defines, $paragraph->getDefines()); if (!$paragraph->isEmpty()) { $this->paragraphs[] = $paragraph; } } }
/** * Renders Paragraph object into HTML format * * @param \Inml\Text\Paragraph $paragraph * @return string */ private function renderParagraph(Paragraph $paragraph) { $lines = []; foreach ($paragraph as $line) { $lines[] = $this->renderLine($line); } return $this->wrapInTags(implode(self::CHAR_LINEBREAK, $lines), $paragraph->getStyles(), 'p'); }