rzlbrnft
Goto Top

Preg-replace mit Variablen nutzen

Ich möchte gerne ein kleines Joomla Tool umschreiben weil sich der Code für das preg_replace mittlerweile geändert hat.
Es geht darum, eine Zeichenfolge aus einem Widget mit HTML Code zu ersetzen.

Folgendes ist die Zeichenfolge:

{plgbfv} 13135341513 | BLABLAYIUBUNYUB28782 {/plgbfv}

Die Codes aus dem Pattern sollen in einen HTML Code eingefügt werden.
Also folgendermaßen
 $repl = "<script type=\"text/javascript\" src=\"http://www.bfv.de/widget/widgetresource/widgetjs\">";  
    $repl .= "</script>";  
    $repl .= "<div id=\"13135341513\"></div>";  
    $repl .= "<script>";  
    $repl .= "BFVWidget.HTML5.zeigeMannschaftKomplett(\"BLABLAYIUBUNYUB28782\", \"13135341513\", { height: 450, width: 400, selectedTab: BFVWidget.HTML5.mannschaftTabs.spiele});";  
    $repl .= "</script>";  


Wie muss ich den Pattern gestalten damit ich die beiden Variablen im Code verwenden kann?

Content-ID: 253260

Url: https://administrator.de/contentid/253260

Ausgedruckt am: 23.11.2024 um 13:11 Uhr

colinardo
Lösung colinardo 28.10.2014, aktualisiert am 01.11.2014 um 13:30:18 Uhr
Goto Top
Hallo rzlbrnft,
ungefähr so:
<?php
$string = '{plgbfv} 13135341513 | BLABLAYIUBUNYUB28782 {/plgbfv}';  
$repl = "<script type=\"text/javascript\" src=\"http://www.bfv.de/widget/widgetresource/widgetjs\">";  
$repl .= "</script>";  
$repl .= "<div id=\"$1\"></div>";  
$repl .= "<script>";  
$repl .= "BFVWidget.HTML5.zeigeMannschaftKomplett(\"$2\", \"$1\", { height: 450, width: 400, selectedTab: BFVWidget.HTML5.mannschaftTabs.spiele});";  
$repl .= "</script>";  
$string = preg_replace('/\{plgbfv\}\s*([^\s]+?)\s*\|\s*([^\s]+?)\s*\{\/plgbfv\}/gi',$repl,$string);  
?>
Grüße Uwe