aan alle goede dingen komt een eind, webmasterplein.net 2003 - 2013
wij danken jullie voor al mooie momenten die dankzij dit forum ontstonden - Derk, Rutger en Stef

preg_replace met array

Je komt er niet helemaal uit bij het scripten? Ɯbergoede functie geschreven? Alles met betrekking tot scripting, kun je hier terecht.

preg_replace met array

Berichtdoor libia » 09 mei 2008 12:34

misschien (of eigenlijk zeker weten) een beetje een domme vraag.. maar ik kom er niet meer uit..
<?php $this->page = preg_replace("/\{" . $a . "\[(.*?)\]\}/", $b["$1"], $this->page);?>, dit is een regel uit mijn klasse.. maar het werkt niet.. ik wil dus die (.*?) invullen in de array $b maar ik zou niet weten hoe :S
Avatar gebruiker
libia
wmpr
 
Berichten: 4149
Geregistreerd: 23 okt 2005 14:14
Woonplaats: Alphe!!

Re: preg_replace met array

Berichtdoor ElbertF » 09 mei 2008 13:00

preg_replace_callback() is de functie die je zoekt. :) $b moet echter wel global zijn (niet in de variable scope van de class), anders kun je 'm niet aanroepen vanuit de callback functie (tenzij je een hele ingewikkelde truc uithaalt waar ik je ook nog wel bij kan helpen).
Avatar gebruiker
ElbertF
wmpr
 
Berichten: 1310
Geregistreerd: 14 nov 2007 22:09

Re: preg_replace met array

Berichtdoor libia » 09 mei 2008 13:17

geef mij die ingewikkelde truc dan maar :)

ik snap trouwens niets van die callback, maar als ik een relevant voorbeeldje zie lukt het wel :)

edit ik heb het opgelost :)
die ene regel is $this->page = preg_replace_callback("/\{(" . $a . ")\[(.*?)\]\}/", array($this, 'callback'), $this->page); geworden en ik heb nog een functie:
Code: Selecteer alles
private function callback($match)
   {
      return $this->variables[$match[1]][$match[2]];
   }
Avatar gebruiker
libia
wmpr
 
Berichten: 4149
Geregistreerd: 23 okt 2005 14:14
Woonplaats: Alphe!!

Re: preg_replace met array

Berichtdoor ElbertF » 09 mei 2008 13:59

Als je van callback($match), callback(&$match) maakt zou het nog een tikkeltje efficienter moeten zijn. :D
Avatar gebruiker
ElbertF
wmpr
 
Berichten: 1310
Geregistreerd: 14 nov 2007 22:09


Keer terug naar PHP, ASP, SQL



cron