From 9dae115ad482face77ac9fb96d0fef4453c5865b Mon Sep 17 00:00:00 2001 From: Marcel Naeve Date: Sat, 20 Apr 2024 17:35:25 +0200 Subject: [PATCH] =?UTF-8?q?methode=20zum=20unique=20teile=20rendern=20hinz?= =?UTF-8?q?ugef=C3=BCgt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/class.StringBuilder.php | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/class.StringBuilder.php b/src/class.StringBuilder.php index df84a52..6ff0885 100644 --- a/src/class.StringBuilder.php +++ b/src/class.StringBuilder.php @@ -263,4 +263,19 @@ class StringBuilder { } return $tpl; } + + /** + * Alle Teile zu einem String zusammenfügen, wärend doppelt vorkommende Teile nicht erneut vorkommen und dann variablen im gesamt String ersetzen. + * @return string Gesamt-String mit Variablen ersetzt. + */ + public function renderUnique() : string { + $tpl = $this->joinUnique(); + foreach($this->vars as $key => $value) { + if(is_numeric($value) or is_string($value)) { + $tpl = preg_replace("/".$this->varPrefix."\s*".$key."\s*".$this->varSuffix."/", $value, $tpl); + } + } + return $tpl; + } + }